sehr geiles tut hab ne ewigkeit nach einer lösung gesucht bis ich dieses tut gefunden habe
auf ein problem stoße ich noch und zwar habe ich eine standard dialogbox auf die ich zugreifen möchte jedoch bekomme ich in vb keinen wert zurück wenn ich nach dieser dialogbox suche
code sieht wie folgt aus
Dim Hauptfenster As IntPtr = FindWindow("#32770 (Dialogfeld)", Nothing)
Dim Button_OK As IntPtr = FindWindowEx(Hauptfenster, IntPtr.Zero, Nothing, "OK")
SendMessage(Button_OK, BM_Click, 0, 0)
im bild ist nochmal zu sehen wie die dialogbox im spy aussieht dabei ist mir aber aufgefallen das es nochmal eine dialogbox gibt mit der selben klasse aber mit dem namen warnung welche aber nicht aktiv ist vielleicht könnte das auch das problem sein
[Only registered and activated users can see links. Click Here To Register...]
edit: hab jetzt mal ein paar tests gemacht und habe es jetzt so versucht
Hauptfenster = FindWindow("#32770", Nothing)
damit bekomm ich auch etwas zurück aber da bekomm ich wie schon oben erwähnt das falsche fenster zurück nämlich das mit warnung
wie komme ich jetzt an das zweite ?
edit2:
habe es jetzt geschaft das ich das zweite fenster rein bekomme habe es jetzt so gelöst
Hauptfenster = FindWindow("#32770", "")
also nicht nothing
holle mir jetzt den button welchen ich auch zurück bekomme und das nachfolgende label der text aus dem label wird angezeigt aber der button wird anschließend nicht gedrückt
Button_OK = FindWindowEx(Hauptfenster, IntPtr.Zero, "Button", "OK")
Dim test2 As IntPtr = FindWindowEx(Hauptfenster, Button_OK, "Static", Nothing)
MessageBox.Show(GetText(test2))
SendMessage(Button_OK, BM_Click, 0, 0)
woran könnte das liegen ?
edit3:
habe jetzt was interessantes herausgefunden ich weis zwar nicht warum aber wenn ich zweimal einen sendmessage mache dann wird der zweite ausgeführt
@wild
vielleicht hast du ja das engliche visual studio drauf dann währe natürlich auch spy englisch
was auch sein kann das spy einen reg eintrag hat mit der sprache und dieser umgestellt werden muss