C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: アクティブなハンドル記憶


(過去ログ 126 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■75039 / inTopicNo.1)  アクティブなハンドル記憶
  
□投稿者/ それや (1回)-(2015/02/22(Sun) 08:40:28)

分類:[VB.NET/VB2005 以降] 

メモ帳をアクティブにしている状態で、ボタン1をマウスが通過すると、メモ帳のハンドルを取得します。
次に違うウィンドウをアクティブにした後に、ボタン2をクリックすると、メモ帳をアクティブにしたいのですが、
以下のエラーが出ますが意味がわかりませんので、宜しくお願い致します。
***
SetForegroundWindow' がスタックを不安定にしています。PInvoke シグネチャがアンマネージ ターゲット シグネチャに一致していないことが原因として考えられます。呼び出し規約、および PInvoke シグネチャのパラメーターがターゲットのアンマネージ シグネチャに一致していることを確認してください。
***
Imports System.Text
Public Class Form1
Public awhund_m As Long 'アクティブなハンドルメモ
Declare Function GetForegroundWindow Lib "user32" () As Long
Declare Function SetForegroundWindow Lib "user32" (ByVal hwnd As Long) As Long

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
SetForegroundWindow(awhund_m)
End Sub

Private Sub Button1_MouseMove(sender As Object, e As MouseEventArgs) Handles Button1.MouseMove
Dim AWhwnd As Long
'アクティブウィンドウのハンドルを取得
AWhwnd = GetForegroundWindow()
awhund_m = AWhwnd 'アクティブなハンドルメモ
MsgBox(AWhwnd)
End Sub
End Class

引用返信 編集キー/
■75040 / inTopicNo.2)  Re[1]: アクティブなハンドル記憶
□投稿者/ Hongliang (284回)-(2015/02/22(Sun) 09:45:23)
ハンドルはIntPtr型で扱ってください。
引用返信 編集キー/
■75042 / inTopicNo.3)  Re[2]: アクティブなハンドル記憶
□投稿者/ それや (2回)-(2015/02/22(Sun) 14:56:04)
No75040 (Hongliang さん) に返信
正常動作しました大変ありがとうございました。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -