Seite 3 von 3

Verfasst: 01.04.2006 10:40
von Kaeru Gaman
Macros hat geschrieben:@ Alteingesessenen Kaeru Gaman:
Erst lesen, dann Posten ;-)
ich bezog mich auf:
Andre123 hat geschrieben:Thx für deine Hilfe

das teste ich nu auch aus und sag dan bescheid!

nur jetzt hab ich ein neues problem ich hab hier ne Procedure
geschrieben die einfach mitten drin stehen bleibt ich versteh nich wieso!

also ich mach am anfang des Programs das:

If InitMouse() = 0 Or InitKeyboard() = 0
MessageRequester("Error", "Can't open DirectX 7", 0)
End
EndIf

das scheint ja auch zu gehen das Requester wirt nich angezeigt!
und dann meine procedure:


Procedure sete()
anzahl$ = GetGadgetText(#input2)

For i=0 To E.l = Val(anzahl$)

Repeat
ExamineMouse()<-------------------Hier bleibt es stehen!
Until MouseButton(1)
Aposx.l = DesktopMouseX()
Aposy.l = DesktopMouseY()
Channel$ = Channel$+" "+Str(Aposx.l)+" "+Str(Aposy.l)
SetGadgetText(#sete,Str(i))
Next
EndProcedure


weis vieleicht einer warum das nich get?
so wie ich das sehe, hat er hier die desktop-maus und die screen-maus durcheinandergeworfen.
ich sagte AFAIK sind diese -> ExamineMouse() ; MouseButton(1)
maus-geschichten für den screen.

seh ich da was falsch?

Verfasst: 01.04.2006 11:14
von Macros
Nein, dann hast du recht.

oha

Verfasst: 01.04.2006 12:47
von Andre123
oha also das get jetzt (Dank Macros) aber nur das mit der tastatur noch nich :?

pls

Verfasst: 01.04.2006 17:55
von Andre123
PLS HELP :cry:

Verfasst: 02.04.2006 14:56
von benpicco
Hiermitt müste es gehen:

Code: Alles auswählen

Procedure TypeInWindow(hWnd,string$)
  While(x<Len(string$))
    SendMessage_(hWnd, #WM_CHAR, PeekB(@string$+x), 0);Direckt im Speicher rumzuhantieren geht einfacher als das benötigte Zeichen mit mid() rauszusuchen ;)
    Delay(10)
    x+1
  Wend
EndProcedure

RunProgram("cmd")
hWnd = FindWindow_(0, "C:\WINDOWS\system32\cmd.exe")
TypeInWindow(hWnd,"dir")
; Einmal Return drücken 
PostMessage_(hWnd, #WM_KEYDOWN, #VK_RETURN, 0)

TypeInWindow(hWnd,"echo Ich hoffe das hilft dir")
PostMessage_(hWnd, #WM_KEYDOWN, #VK_RETURN, 0)
Du musst dafür natürlich das Handle des Fensterrs kennen, das die Eingaben empfangen soll, normalerweise ist das das, das den Fokus hat (wie du rausfindest welches das ist, hab ich hier glaube ich vor kurzem gelsen), als Beispiel habe ich hier einfach den titel der console genommen (mit FindWindow das handle zum titel gesucht)