Skip to content

Instantly share code, notes, and snippets.

@kumatti1
kumatti1 / Module1.bas
Created February 8, 2016 08:37
APIのBeep
Option Explicit
Private Type GUID
Data1 As Long
Data2 As Integer
Data3 As Integer
Data4(0 To 7) As Byte
End Type
@kumatti1
kumatti1 / hoge.cpp
Created March 2, 2016 07:49
( ゚∀゚)o彡゜ワッフル!ワッフル!
#include <windows.h>
#include <oleacc.h>
#include <Shlwapi.h>
#include <stdio.h>
#import <shdocvw.dll>
#import <mshtml.tlb>
typedef enum {
SWC_EXPLORER = 0x0,
@kumatti1
kumatti1 / Module1.bas
Last active January 8, 2021 02:25
hoge.idl
Option Explicit
Private Declare PtrSafe _
Function AtlFreeMarshalStream Lib "atl.dll" ( _
ByVal pStream As IUnknown _
) As Long
Sub hoge()
@kumatti1
kumatti1 / Module1.bas
Last active December 11, 2016 22:50
「shlwapi.dll」の無名関数
574F454D 0
1 4
0 8
0 12
C0 16
46000000 20
0 24
5 28
1DD0078E 32
E8E390A5 36
Option Explicit
Private Declare Function WindowFromAccessibleObject Lib "oleacc.dll" ( _
ByVal IAcessible As Object, _
ByRef hwnd As LongPtr _
) As Long
Private Declare _
Function SetWindowLongW Lib "user32.dll" ( _
ByVal hwnd As LongPtr, _
Option Explicit
Private Declare PtrSafe _
Function IUnknown_GetWindow Lib "shlwapi.dll" ( _
ByVal punk As IUnknown, _
ByRef phwnd As LongPtr _
) As Long
Const WM_LBUTTONDOWN = &H201
Private Declare PtrSafe Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As LongPtr, ByVal wMsg As Long, ByVal wParam As LongPtr, lParam As Any) As LongPtr
Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
@kumatti1
kumatti1 / Module1.bas
Created February 24, 2017 23:45
IPrint
Option Explicit
Private Type GUID
Data1 As Long
Data2 As Integer
Data3 As Integer
Data4(0 To 7) As Byte
End Type
'https://msdn.microsoft.com/en-us/library/52e6es3z.aspx
Option Explicit
Private Declare PtrSafe _
Function SHGetDesktopFolder Lib "Shell32.dll" ( _
ByRef ppshf As IUnknown) As Long
Private Declare PtrSafe _
Function SHInvokeDefaultCommand Lib "shlwapi.dll" Alias "#279" ( _
ByVal hWnd As LongPtr, _
@kumatti1
kumatti1 / Module1.bas
Created March 16, 2017 03:20
ファイル指定で既定の右クリック呼び出し
Option Explicit
Private Type GUID
Data1 As Long
Data2 As Integer
Data3 As Integer
Data4(0 To 7) As Byte
End Type
Private Declare PtrSafe _
@kumatti1
kumatti1 / Module1.bas
Created March 16, 2017 22:33
ファイル指定で、任意の右クリックメニュー呼び出し
Option Explicit
Private Type GUID
Data1 As Long
Data2 As Integer
Data3 As Integer
Data4(0 To 7) As Byte
End Type
Private Declare PtrSafe _