Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 05:46

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Programm wird mehrfach gestartet?

Discussion on Programm wird mehrfach gestartet? within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1


 
Professor Linebeck's Avatar
 
elite*gold: 0
Join Date: Jul 2010
Posts: 1,342
Received Thanks: 1,599
Programm wird mehrfach gestartet?

Hallo liebe Elitepvper's.
Ich hab' vor, ein Programm per [F7] aufrufen zu lassen. Das klappt auch ganz gut, aber nachdem ich [F7] drücke, erscheint das Programm mehrfach, anstatt nur 1 mal.

Wo mache ich den Fehler?

Code:
#include <Misc.au3>

$dll = DllOpen("user32.dll")

while 1
    if _IsPressed("76", $dll) then Run("script\PROGRAMM.exe")

wend
Lg
Professor Linebeck is offline  
Old 08/16/2013, 21:13   #2
 
Rolle's Avatar
 
elite*gold: 2
Join Date: Dec 2005
Posts: 413
Received Thanks: 72
Heyho,
du hast dein Aufruf in einer While Schleife, diese ist endlos.
Könntest jetzt wenn das Programm gestartet wurde einfach ExitLoop reinschreiben damit er aus der While Schleife geht und mit dem Script weiter macht.

Hoffe konnte dir helfen =)

Grüße
Rolle is offline  
Thanks
1 User
Old 08/16/2013, 22:01   #3


 
Professor Linebeck's Avatar
 
elite*gold: 0
Join Date: Jul 2010
Posts: 1,342
Received Thanks: 1,599
Quote:
Originally Posted by Rolle View Post
Heyho,
du hast dein Aufruf in einer While Schleife, diese ist endlos.
Könntest jetzt wenn das Programm gestartet wurde einfach ExitLoop reinschreiben damit er aus der While Schleife geht und mit dem Script weiter macht.

Hoffe konnte dir helfen =)

Grüße
Danke für die schnelle Antwort! (:

Das Problem ist nur, dass das Programm bzw die Funktion nicht beendet werden soll. Es soll eine Art Hotkey(Deshalb [F7]) darstellen, welchen man jederzeit drücken kann.
Deshalb sollte sich das Programm nicht schließen x:
Professor Linebeck is offline  
Old 08/16/2013, 22:32   #4
 
Rolle's Avatar
 
elite*gold: 2
Join Date: Dec 2005
Posts: 413
Received Thanks: 72
Dann mach doch einfach am anfang des Scripts:
HotKeySet("{Taste}", "Function")

Dann kannste die Taste immer drücken ohne das sich dein Programm beendet.

Das ist jetzt die Hilfe die ich aus deiner Fragestellung raus lesen kann ^^

Am besten schreibst du mal genau was du vorhast

Grüße
Rolle is offline  
Thanks
1 User
Old 08/16/2013, 22:58   #5


 
Professor Linebeck's Avatar
 
elite*gold: 0
Join Date: Jul 2010
Posts: 1,342
Received Thanks: 1,599
Quote:
Originally Posted by Rolle View Post
Dann mach doch einfach am anfang des Scripts:
HotKeySet("{Taste}", "Function")

Dann kannste die Taste immer drücken ohne das sich dein Programm beendet.

Das ist jetzt die Hilfe die ich aus deiner Fragestellung raus lesen kann ^^

Am besten schreibst du mal genau was du vorhast

Grüße
Du hast es schon richtig verstanden (:

Ich hab' es nun mal so versucht, aber nun startet das Programm nicht einmal.(Zwar kein Error, aber auch nicht im Taskmanager zu sehen):
Code:
HotKeySet("{F1}", "Start")

Func Start()
	Run("script\PROGRAMM.exe")
EndFunc
Professor Linebeck is offline  
Old 08/16/2013, 23:05   #6


 
Jeoni's Avatar
 
elite*gold: 966
Join Date: Apr 2010
Posts: 1,104
Received Thanks: 681
Bin zwar kaum in AutoIt drin, aber das kommt daher, dass außer dem HotKeySet kein Code zum ausführen da ist. Du musst das Programm mit einer while-schleife am Leben erhalten.
Code:
HotKeySet("{F1}", "Start")

While 1
	Sleep(10)
WEnd

Func Start()
	Run("script\PROGRAMM.exe")
EndFunc
So sollte es dann auch klappen
MfG
Jeoni
Jeoni is offline  
Thanks
1 User
Old 08/16/2013, 23:21   #7

 
BladeTiger12's Avatar
 
elite*gold: 64
Join Date: May 2011
Posts: 1,228
Received Thanks: 847
Naja, das Hauptproblem ist, das es in einer While-Schleife steht.
B.z.w die While durchläuft so schnell das _IsPressed in
einer Sekunde vielleicht 2x(oder mehrmals) abgefragt wird.

Code:
#include <Misc.au3>

$dll = DllOpen("user32.dll")

while 1
    if _IsPressed("76", $dll) then
          Run("script\PROGRAMM.exe")
          Sleep(200)
    EndIf

wend
BladeTiger12 is offline  
Thanks
1 User
Old 08/16/2013, 23:25   #8
 
Rolle's Avatar
 
elite*gold: 2
Join Date: Dec 2005
Posts: 413
Received Thanks: 72
Jeoni hat recht, du musst dem Programm eine While Schleife geben. Damit es am "leben" bleibt. Ansonsten geht das Script einmal durch und dann ist es "zu Ende" und beendet sich in dem Fall^^
Somit haste keine Chance deinen HotKey zu drücken :P

Grüße
Rolle is offline  
Old 08/16/2013, 23:26   #9


 
Professor Linebeck's Avatar
 
elite*gold: 0
Join Date: Jul 2010
Posts: 1,342
Received Thanks: 1,599
Quote:
Originally Posted by BladeTiger12 View Post
Naja, das Hauptproblem ist, das es in einer While-Schleife steht.
B.z.w die While durchläuft so schnell das _IsPressed in
einer Sekunde vielleicht 2x(oder mehrmals) abgefragt wird.

Code:
#include <Misc.au3>

$dll = DllOpen("user32.dll")

while 1
    if _IsPressed("76", $dll) then
          Run("script\PROGRAMM.exe")
          Sleep(200)
    EndIf

wend
So funktionert es, vielen Dank! (:
Professor Linebeck is offline  
Old 08/17/2013, 00:28   #10
 
elite*gold: 0
Join Date: Mar 2009
Posts: 7,260
Received Thanks: 33,147
Wenn das "PROGRAMM" generell nur einmal gestartet werden soll kannst du dir auch die Funktion _Singleton() angucken. Vorausgesetzt, dass du die "PROGRAMM.exe" aus einem AutoIt Script erstellst.
KDeluxe is offline  
Old 08/17/2013, 19:56   #11
 
FacePalmMan's Avatar
 
elite*gold: 0
Join Date: Jan 2013
Posts: 426
Received Thanks: 129
oder besser (das programm wartet nun auch darauf, bis F7 wieder losgelassen wird):
Code:
#include <Misc.au3>
while 1
    if _IsPressed("76") then
          Run("script\PROGRAMM.exe")
          While 1
               If not _ispressed("76") then Exitloop
          WEnd
    EndIf
WEnd
FacePalmMan is offline  
Reply


Similar Threads Similar Threads
Worldedit 4.7 wird nicht gestartet
10/28/2011 - Minecraft - 6 Replies
Hi Leute ich habe mal eine frage: Ich habe einen Server von Bukkit und wollte dort den Plugin Worldedit instalieren. Habe auch schon viele andere Pluggins die gut funktionieren. Jedoch startet die Konsole kein Worldedit. Er zeigt garnicht erst an, dass er Worldedit läd. Als wenn er es einfach Ignoriert.
[HILFE] "Windows wird gestartet" wird angezeigt, tuts aber nicht....
04/21/2011 - Main - 7 Replies
Hallo leute, wie schon im titel gesagt! Ich starte ordnungsgemäß mein pc, "Windows wird gestartet" wird angezeigt, tuts aber nicht. Habe ungf. 5min gewartet dann hab ichs einfach ausgemacht. Habe Win 7 64Bit vor 2 Tagen neu installiert weil irgendein fehler aufgetreten ist, wenn ich mich angemeldet habe ( dann ist der explorer immer abgekakt und konnte nichts machen). Weiss vielleicht einer was man tun kann? Habe schon versucht über den abgesicherten modus reinzukommen <-- Geht nicht! Meine...
svchost.exe mehrfach gestartet.
04/13/2011 - Technical Support - 13 Replies
Moin, Habe ein kleines Problemchen, dass mich momentan ziemlich stört. Und zwar habe ich beim Hochfahren den Prozess svchost.exe schon locker um die 10-15mal offen. Warum ist das so? Und vorallem, was kann man dagegen machen? Das komische ist ja, dass auf den Rechner meines Kollegen, den ich fertig konfiguriert hatte nur insgesamt gerademal um die 10 Prozesse laufen. Auch interessant ist, dass sich bei mir der Systemprozess sfc.exe ständig startet und sich wieder schließt im Sekunden...
Wo auf einer Map gestartet wird einstellen?
07/29/2010 - Metin2 Private Server - 1 Replies
HI Ich hab mal ne Frage :D Wo kann man einstellen, wo man startet wenn man auf die map geht? Edit: und am besten noch wo die verschiedenen reiche starten.
Server8 wird vill neu gestartet
11/19/2009 - Metin2 - 18 Replies
Serverproblem Server 8 Torkas Liebe Community, die Serverprobleme auf Server 8 Torkas sind bekannt. Die Technik wurde soeben informiert. Der Server wird vorraussichtlich neugestartet. Wir bitten um euer Veständnis. Euer Metin2.de-Team



All times are GMT +2. The time now is 05:46.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.