投稿日 | : 2007/02/10(Sat) 01:23 |
投稿者 | : sakusaku |
Eメール | : |
URL | : |
タイトル | : SendMassageの変数(引数?)について |
お世話になっております
Private Declare Function SendMassage Lib "user32" _
Alias "SendMassageA" (ByVal hwnd As Long, _
ByVal wMsg As Long, ByVal wParam As Long, _
lParam As Any) As Long
のhwndを他の変数(引数?)に変えるとうまく動かなくなるのでしょうか?
ちなみにwnなどに変えると実行時エラー435が出ます
同プログラム内でホットキーを使うので
Public Declare Function SetWindowLong Lib "user32" _
Alias "SetWindowLongA" (ByVal hwnd As Long, _
ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Public Declare Function CallWindowProc Lib "user32" _
Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, _
ByVal hwnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Public Declare Function RegisterHotKey Lib "user32" _
(ByVal hwnd As Long, ByVal id As Long, ByVal fsModifiers As Long, ByVal vk As Long) As Long
Public Declare Function UnregisterHotKey Lib "user32" _
(ByVal hwnd As Long, ByVal id As Long) As Long
などがある関係でSendMassageの方をhwndのままにしておくと
コンパイルエラー
関数またはインターフェイスが予約されているか、またはVisualBasicで
サポートされていないオートメーションタイプが関数で使用されています
とエラーになっってしまいます
ホットキー関係のコードをすべて削除すると正常にSendMassageが送られます
やりたいことはあるアプリケーションにWM_CLOSEを送りたいと思っています
もしだめなようならアプリの×ボタンをカーソル移動で押させる方法で
やろうと思っています(そのコードはできてますがスマートじゃないので
なんとかならないかと思っています)
vb6,WinXP
よろしくお願いします