Ik probeer via VB.NET dmv sendkeys een MFC applicatie aan te sturen. De betreffende applicatie is een simpele import/export tool voor een custom DB formaat. Het rare is dat ik wel gewoon het pad/bestandsnaam kan intikken via sendkeys, ik kan hem afsluiten door te tabben naar de exit knop en een {ENTER} door te geven maar de export knop wil gewoon niet werken om een of andere reden. Heb al van alles geprobeerd, nog raarder is dat als ik gewoon de applicatie start via Process.Start, en dan mn eigen VB.NET applicatie afsluit, ik zelfs handmatig via de muis/keyboard de export knop niet aan het werk krijgt
. Als ik dezelfde applicatie gewoon via windows start en hem 'normaal' gebruik werkt alles gewoon. Ook kan ik als ik hem via VB.NET start gewoon de import knop gebruiken, enkel de export werkt om een of andere vage reden niet.
Iemand die hier een idee over heeft, ben er al vanaf vanochtend mee bezig en het begint aardig op mn zenuwen te werken
.
[edit]
de betreffende applicatie (ong. 350kb):
http://www.vennik.speedxs.nl/DYN_cyclist.exe
Deel van de code:
Iemand die hier een idee over heeft, ben er al vanaf vanochtend mee bezig en het begint aardig op mn zenuwen te werken
[edit]
de betreffende applicatie (ong. 350kb):
http://www.vennik.speedxs.nl/DYN_cyclist.exe
Deel van de code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| Public Sub Export(ByVal ProcessPath As String)
Dim objProcess As System.Diagnostics.Process
Try
objProcess = New System.Diagnostics.Process()
objProcess.StartInfo.FileName = ProcessPath
objProcess.StartInfo.WindowStyle = ProcessWindowStyle.Normal
objProcess.Start()
objProcess.WaitForInputIdle(9000)
If objProcess.Responding = True Then
System.Windows.Forms.SendKeys.SendWait("{TAB}")
System.Windows.Forms.SendKeys.SendWait("{TAB}")
System.Windows.Forms.SendKeys.SendWait("{TAB}")
System.Windows.Forms.SendKeys.SendWait("D:\PCMedit\rabo2.cdb")
System.Windows.Forms.SendKeys.SendWait("{TAB}")
System.Windows.Forms.SendKeys.SendWait("{TAB}")
System.Windows.Forms.SendKeys.SendWait("{TAB}")
System.Windows.Forms.SendKeys.SendWait("{TAB}")
'Deze werkt dus niet
System.Windows.Forms.SendKeys.SendWait("{ENTER}") |