VB2010 ウィンドウタイトルを取得
こんにちはVB学習を始めて2週間になりました。
Webの記事などを参考にしていますがバージョンによって記述が変わって苦戦しています。
今回ご質問したい内容です。
ボタンを押すとメモ帳が起動されているか調べてそのウィンドウタイトルを得る
ウィンドウタイトルで検索してハンドルを取得してそのままそのハンドルで逆に
ウィンドウタイトルを得ています(無意味な処理ですが学習用という事で)
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Integer
Private Declare Function GetWindowText Lib "user32.dll" Alias "GetWindowTextA" (ByVal hWnd As Integer, ByVal lpString As String, ByVal nMaxCount As Integer) As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim ECHandle As Integer
Dim Titlename As String
Titlename = vbNullString
ECHandle = FindWindow(vbNullString, "無題 - メモ帳")
GetWindowText(ECHandle, Titlename, 255)
Label5.Text = Titlename
If ECHandle = 0 Then
Label4.Text = "取得できない"
Else
Label4.Text = "取得出来た" & ECHandle & Titlename
End If
End Sub
結果はというと Titlename が空っぽのままでタイトルが取得できません
どのような原因が考えられますでしょうか?
よろしくお願いいたします。
補足
FindWindowEx関数を使って調査すればよいということですが具体的にどうやればいいでしょうか。他のホームページで色々調べてみたのですがよくわかりませんでした。あまり知識がなくて申し訳ないのですが教えていただけないでしょうか。