| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
keit
Anmeldedatum: 11.05.2006 Beiträge: 2
|
Verfasst am: Do Mai 11, 2006 7:53 pm Titel: Prozessorauslastung bei 50%. Anfänger braucht Hilfe |
|
|
Hallo zusammen.Mein Skript soll beim klicken der mittlerenn Mousetaste oder des 2ten Joystickbuttons eine Reihe von Befehlen ausführen (send...sleep... im Quelltext). Das funktioniert auch. Leider wird aber beim Ausführen des Programmes 50% meiner Rechenleistung verbraucht.
Wie geht das ganze resourcen schonender? Ideen?
| Code: |
SetKeyDelay, 1
SetMouseDelay, 1
Loop
{
Loop
{
GetKeyState, state, Joy2, P
if state=D
break
GetKeyState, state, MButton, P
if state=D
break
}
Send {F2 down}
Sleep 1
Send {F2 up}
Sleep 0
Send {Click right down}
Sleep 30
Send {Click right up}
Sleep 30
Send {Click down}
Sleep 500
Send {Click up}
Sleep 50
}
return
|
|
|
| Nach oben |
|
 |
Andi
Anmeldedatum: 10.05.2006 Beiträge: 6
|
Verfasst am: Do Mai 11, 2006 10:04 pm Titel: |
|
|
da sich ein Joystickbutton nicht als Hotkey definieren lässt, kannst Du nur versuchen, die Abfrage-Loop etwas auszubremsen. Bereits ein Sleep 10 wirkt hier aber schon Wunder...es sei denn Du hast so schnelle Finger, dass Du den Wert noch kleiner wählen musst
| Code: | SetKeyDelay, 1
SetMouseDelay, 1
Loop
{
Loop
{
GetKeyState, state, Joy2, P
if state=D
break
GetKeyState, state, MButton, P
if state=D
break
sleep, 10
}
Send {F2 down}
Sleep 1
Send {F2 up}
Sleep 0
Send {Click right down}
Sleep 30
Send {Click right up}
Sleep 30
Send {Click down}
Sleep 500
Send {Click up}
Sleep 50
}
return
|
|
|
| Nach oben |
|
 |
Thalon
Anmeldedatum: 25.10.2005 Beiträge: 1867 Wohnort: Österreich
|
Verfasst am: Do Mai 11, 2006 11:32 pm Titel: |
|
|
Oder du belegst einen Hotkey
| Code: | ~MButton::
~Joy2::
Send {F2 down}
Sleep 1
Send {F2 up}
Sleep 0
Send {Click right down}
Sleep 30
Send {Click right up}
Sleep 30
Send {Click down}
Sleep 500
Send {Click up}
Sleep 50
return | Ist ein Sleep von 0 notwendig? Was möchtest du damit eigentlich machen?
Thalon _________________ Mein Motto: Hilfe zur Selbsthilfe!
Teildeutsche Hilfe (CHM)!! und Deutsche Online-Hilfe |
|
| Nach oben |
|
 |
Gast
|
Verfasst am: Fr Mai 12, 2006 3:39 pm Titel: |
|
|
| Thalon hat Folgendes geschrieben: | Oder du belegst einen Hotkey
| Code: | ~MButton::
~Joy2::
Send {F2 down}
Sleep 1
Send {F2 up}
Sleep 0
Send {Click right down}
Sleep 30
Send {Click right up}
Sleep 30
Send {Click down}
Sleep 500
Send {Click up}
Sleep 50
return | Ist ein Sleep von 0 notwendig? Was möchtest du damit eigentlich machen?
Thalon |
|
|
| Nach oben |
|
 |
keit
Anmeldedatum: 11.05.2006 Beiträge: 2
|
Verfasst am: Fr Mai 12, 2006 3:42 pm Titel: Danke |
|
|
Vielen Dank für die Anregungen und schnellen Antworten. Ich werde sie am Wochenende testen.  |
|
| Nach oben |
|
 |
Andi
Anmeldedatum: 10.05.2006 Beiträge: 6
|
Verfasst am: Fr Mai 12, 2006 10:26 pm Titel: |
|
|
Die Version von Thalon ist natürlich wesentlich eleganter. Was ich oben über die Joystick Hotkeys gesagt habe stimmt so nicht. Ich hatte die Hilfe hierzu nicht richtig gelesen .
| Zitat: | Joystick
Joy1 through Joy32: The buttons of the joystick. To help determine the button numbers for your joystick, use this test script. Note that hotkey prefix symbols such as ^ (control) and + (shift) are not supported (though GetKeyState can be used as a substitute). Also note that the pressing of joystick buttons always "passes through" to the active window if that window is designed to detect the pressing of joystick buttons.
Although the following Joystick control names cannot be used as hotkeys, they can be used with GetKeyState:
JoyX, JoyY, and JoyZ: The X (horizontal), Y (vertical), and Z (altitude/depth) axes of the joystick.
... |
|
|
| Nach oben |
|
 |
|