Ik heb hier (geprobeerd) een programmatje te maken dat in een bepaald window van Visual C++ 6 een waarde bijvoegd (ik moet die namelijk veel erin typen, maar copy/paste is niet gemakkelijk omdat ik het clipboard ook voor andere dingen gebruik).
Wat ik dus probeer te doen is zoeken naar het window met "Microsoft Visual C++" in de titel, dit vind ik... Ik vind daar verscheidene dingen in, maar WAT exact is het eerste active mdi-window? En HOE "typ" ik daar iets in?
mijn code:
Het window is geloof ik die AfxMdiFrame42, maar daar geraak ik nooit. Ik vind de eerste lHwnd, maar de 2e vind ik al niet meer???
Zou er een van de meer geavanceerdere mensen eventjes kunnen kijken waaraan dat ligt??
Dank u zeer!
Wat ik dus probeer te doen is zoeken naar het window met "Microsoft Visual C++" in de titel, dit vind ik... Ik vind daar verscheidene dingen in, maar WAT exact is het eerste active mdi-window? En HOE "typ" ik daar iets in?
mijn code:
code:
1
2
3
4
5
6
7
8
9
10
| Public Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWndParent As Long, ByVal hwndChildAfter As Long, ByVal lpszClass As String, ByVal lpszWindow As String) As Long
Public Declare Function SendMessage Lib "user32.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal Msg As Long, wParam As Any, lParam As Any) As Long
Const WM_MDIGETACTIVE = &H229
lHwnd = GetWindowFromTitle("Microsoft Visual C++")
lHwnd = FindWindowEx(lHwnd, 0, "MDIClient", vbNull) 'MDI Client
lHwnd = SendMessage(lHwnd, WM_MDIGETACTIVE, 0, 0) ' Active MDI child
lHwnd = FindWindowEx(lHwnd, 0, "AfxMdiFrame42", vbNull) |
Het window is geloof ik die AfxMdiFrame42, maar daar geraak ik nooit. Ik vind de eerste lHwnd, maar de 2e vind ik al niet meer???
Zou er een van de meer geavanceerdere mensen eventjes kunnen kijken waaraan dat ligt??
Dank u zeer!