|
You last visited: Today at 15:01
Advertisement
Ein externes Programm auf suspend warten und wieder resumen
Discussion on Ein externes Programm auf suspend warten und wieder resumen within the AutoIt forum part of the Coders Den category.
05/01/2013, 17:33
|
#1
|
elite*gold: 29
Join Date: Aug 2011
Posts: 640
Received Thanks: 493
|
Ein externes Programm auf suspend warten und wieder resumen
Ein wunderschönen guten Tag
es tut mir Leid das ich so viele Threads auf machen weil ich nicht weiß wie ich mein Probem definieren soll  . Also was ich möchte ein Beispiel Script :
PHP Code:
Func _ProcessSuspend($Process)
$processid = ProcessExists($Process)
If $processid Then
$ai_Handle = DllCall("kernel32.dll", 'int', 'OpenProcess', 'int', 0x1f0fff, 'int', False, 'int', $processid)
$i_sucess = DllCall("ntdll.dll", "int", "NtSuspendProcess", "int", $ai_Handle[0])
DllCall('kernel32.dll', 'ptr', 'CloseHandle', 'ptr', $ai_Handle)
If IsArray($i_sucess) Then
Return 1
Else
SetError(1)
Return 0
EndIf
Else
SetError(2)
Return 0
EndIf
EndFunc ;==>_ProcessSuspend
Func _ProcessResume($Process)
$processid = ProcessExists($Process)
If $processid Then
$ai_Handle = DllCall("kernel32.dll", 'int', 'OpenProcess', 'int', 0x1f0fff, 'int', False, 'int', $processid)
$i_sucess = DllCall("ntdll.dll", "int", "NtResumeProcess", "int", $ai_Handle[0])
DllCall('kernel32.dll', 'ptr', 'CloseHandle', 'ptr', $ai_Handle)
If IsArray($i_sucess) Then
Return 1
Else
SetError(1)
Return 0
EndIf
Else
SetError(2)
Return 0
EndIf
EndFunc ;==>_ProcessResume
$Process = "notepad.exe"
While 1
If _ProcessSuspend($Process) Then
MsgBox(0,"nein nein nein","so geht das nicht")
_ProcessResume($Process)
EndIf
WEnd
Wie wir hier sehen können soll das Programm auf Notepad aufpassen aber statt das es wartet bis er suspendet wird suspendet und resumt das Programm permanet den Prozess aber ich möchte dass, das Programm warten soll bis der Prozess gefreezt wurde und dann soll er den Prozess entfreezen(resumen) Hoffe ihr könnt mir helfen
|
|
|
05/01/2013, 19:29
|
#2
|
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
|
warum willst du das überhaupt machen ? kannst du das nicht iwie in einem script lösen ?
|
|
|
05/01/2013, 20:48
|
#3
|
elite*gold: 235
Join Date: Jan 2012
Posts: 920
Received Thanks: 377
|
Code:
While 1
If _ProcessSuspend($Process) Then
MsgBox(0,"nein nein nein","so geht das nicht")
_ProcessResume($Process)
EndIf
WEnd
_ProcessSuspend gibt nicht True oder False zurück wenn der Prozess bereits Suspendet ist sondern gibt True zurück wenn er erfolgreich Suspendet wurde (False wenn nicht) d.h., dass die If Abfrage immer Wahr ist und somit der Prozess immer Resumed wird.
|
|
|
05/01/2013, 20:51
|
#4
|
elite*gold: 29
Join Date: Aug 2011
Posts: 640
Received Thanks: 493
|
Nein nicht ich möchte ein League of Legends Bot machen welche aus 3 Komponenten besteht aus dem Bot selber einem Prozesssucher und einem Prozessresumer(obrige Beispiel) denn im Bot sind Passwörter und Benutzername gespeichert und diese sollen nicht in andere Programme eingegeben werden(z.B. in Notepad) falls jemand meinen prozessucher freezen möchte soll mein Prozessresumer diesen prozesssucher jedesmal resumen wenn jemand versuchen sollte diesen zu freezen  .Hoffe ich konnte es verständlich rüberbringen. Doch hab ich was herausgefunden die Problematik ist dass, das Programm permanent den Prozess resumt was sich die CPU Auslastung ansteigen lässt. Hoffe du kannst mir helfen
Quote:
Originally Posted by Croco™
Code:
While 1
If _ProcessSuspend($Process) Then
MsgBox(0,"nein nein nein","so geht das nicht")
_ProcessResume($Process)
EndIf
WEnd
_ProcessSuspend gibt nicht True oder False zurück wenn der Prozess bereits Suspendet ist sondern gibt True zurück wenn er erfolgreich Suspendet wurde (False wenn nicht) d.h., dass die If Abfrage immer Wahr ist und somit der Prozess immer Resumed wird.
|
Also eigentlich gibt es doch _ProcessSuspend($Process) es ist Deklariert worden (siehe Script) und das was du sagt versteh ich nicht so ganz
Edit: Achso jetzt hab ich es verstanden mehrmals lesen hilft 
kannst du mir ein Beispiel geben da ich nicht so ganz weiß wie ich das machen soll
|
|
|
05/01/2013, 21:23
|
#5
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
|
Quote:
Originally Posted by golle12
denn im Bot sind Passwörter und Benutzername gespeichert und diese sollen nicht in andere Programme eingegeben werden(z.B. in Notepad) falls jemand meinen prozessucher freezen möchte soll mein Prozessresumer diesen prozesssucher jedesmal resumen wenn jemand versuchen sollte diesen zu freezen  .
|
wat?
im bot ist "dein" name+pw gespeichert und die werden im spiel eingegeben
(wohl mit Send() ) und du willst nicht, dass jmd einfach notepad öffnet und so dein pw sieht?
richtig verstanden?
|
|
|
05/01/2013, 21:35
|
#6
|
elite*gold: 29
Join Date: Aug 2011
Posts: 640
Received Thanks: 493
|
Quote:
Originally Posted by omer36
wat?
im bot ist "dein" name+pw gespeichert und die werden im spiel eingegeben
(wohl mit Send() ) und du willst nicht, dass jmd einfach notepad öffnet und so dein pw sieht?
richtig verstanden?
|
Ja und nein sie sind in Ini Dateien vertsteckt welche Verschlüsselt sind u.s.w aber es ist richtig.
Pw und name sind nicht nur von mir diese werden vom Benutzer in eine Inputbox eingegeben und werden als Ini gespeichert
Ich weiß schon das man die Ini Dateien entschlüsseln kann und dann auslesen kann aber der Schutz ist ja auch nur für die Random Kindys
|
|
|
05/01/2013, 21:39
|
#7
|
elite*gold: 0
Join Date: Mar 2009
Posts: 2,317
Received Thanks: 1,255
|
du kannst soviel verschlüsseln/suspenden wie du willst, solange du deine programme in autoit schreibst, ist alles lesbar...
dein problem kannst du ja auch anders lösen..
überprüf einfach ob das spiel im vordergrund ist.
wenn nicht - nichts schreiben..
|
|
|
05/01/2013, 21:59
|
#8
|
elite*gold: 235
Join Date: Jan 2012
Posts: 920
Received Thanks: 377
|
ControlSend bringt abhilfe.
Damit Schreibt dein Programm nur in ein bestimmtest Fenster und niemand kann somit Notepad einfach öffnen.
|
|
|
05/01/2013, 23:08
|
#9
|
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
|
Und was wenn jemand das script suspended das das andere davor schuetzt suspended zu werden ?
|
|
|
05/02/2013, 18:42
|
#10
|
elite*gold: 29
Join Date: Aug 2011
Posts: 640
Received Thanks: 493
|
Quote:
Originally Posted by »FlutterShy™
Und was wenn jemand das script suspended das das andere davor schuetzt suspended zu werden ? 
|
Tja das verrate ich nicht denn dass hab ich durchdacht sollte eins nicht ordentlich funktionieren wird alles geschlossen
|
|
|
05/02/2013, 18:53
|
#11
|
elite*gold: 95
Join Date: May 2011
Posts: 982
Received Thanks: 189
|
kannst auch nen 2. antisuspender einbauen, der das antisuspender programm vorm suspenden schützt
|
|
|
05/02/2013, 19:35
|
#12
|
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
|
Quote:
Originally Posted by butter123
kannst auch nen 2. antisuspender einbauen, der das antisuspender programm vorm suspenden schützt 
|
Dieses musst du aber auch bei start vom hauptprogramm suspenden lassen damit das programm erst resumed wird wenn das andere programm das das andere programm vor dem suspenden schuetzt suspendet wurde das du dann mit einem anderen programm resumed das das programm das resumed wurde vor dem suspenden schuetzt !
|
|
|
05/02/2013, 19:58
|
#13
|
elite*gold: 29
Join Date: Aug 2011
Posts: 640
Received Thanks: 493
|
Quote:
Originally Posted by »FlutterShy™
Dieses musst du aber auch bei start vom hauptproggramm suspenden lassen damit das programm erst resumed wird wenn das andere programm das das andere programm vor dem suspenden schuetzt suspendet wurde das du dann mit einem anderen programm resumed das das programm das resumed wurde vor dem suspenden schuetzt ! 
|
Und wie geht das denn hier habe ich mal ein Script gemacht was leider immernoch nicht funktioniert
PHP Code:
Global $iPID,$Suspend = False Global Const $PROCESS_SUSPEND_RESUME = 0x0800 Global Const $SYNCHRONIZE = 0x00100000 Global Const $PROCESS_TERMINATE = 0x0001 $iPID = "notepad.exe" $Suspend = _SuspendProcess($iPID) While 1 If _SuspendProcess($iPID) Then $Suspend = True If $Suspend = True Then _ResumeProcess($iPID) ElseIf $Suspend = False Then Sleep(500) EndIf EndIf WEnd
Func _SuspendProcess ($iPID) $vDLL = DllOpen ('Kernel32.dll') $vProc = DllCall ($vDLL, "hwnd", "OpenProcess", "dword", $SYNCHRONIZE + $PROCESS_SUSPEND_RESUME, "int", false, "dword", $iPID) $vReturn = DllCall ("ntdll.dll", "int", "NtSuspendProcess", "hwnd", $vProc[0]) DllCall ($vDLL, "int", "CloseHandle", "hwnd", $vProc[0]) Return $vReturn[0] EndFunc
Hoffe du kannst mir helfen
|
|
|
05/02/2013, 20:01
|
#14
|
elite*gold: 50
Join Date: Sep 2012
Posts: 3,841
Received Thanks: 1,462
|
Quote:
Originally Posted by golle12
Und wi feht das denn hier habe ich mal ein Script gemacht was leider immernoch nicht funktioniert
Hoffe du kannst mir helfen 
|
ehm naja der post da oben war nicht ernst gemeint aber ich kann dir auch so sagen das dir das nichts bringen wird soetwas zu machen .
Es gab trotzdem muss ich mal dazu sagen ein anderes command glaube ich um zu checken ob ein programm "freezed ist"
|
|
|
05/02/2013, 20:03
|
#15
|
elite*gold: 29
Join Date: Aug 2011
Posts: 640
Received Thanks: 493
|
Quote:
Originally Posted by »FlutterShy™
ehm naja der post da oben war nicht ernst gemeint aber ich kann dir auch so sagen das dir das nichts bringen wird soetwas zu machen .
Es gab trotzdem muss ich mal dazu sagen ein anderes command glaube ich um zu checken ob ein programm "freezed ist"
|
Meinst du das mit der" isWindHung" oder wie das auch immer heißt
|
|
|
 |
|
Similar Threads
|
Externes Programm starten per Variable
10/01/2012 - C/C++ - 6 Replies
Hallo Leute ;
Ich wollte mal fragen ob es in C++ eine möglichkeit gibt um z.b.
über cin einen string abzuspeichern und diesen dann an an eine funktion zu übergeben die das eingegebene (z.b. notepad.exe ) ausführt?
Hier mal ein code beispiel wie ich mir das ganze vorstelle ( ohne includes usw):
string eingabe;
cout << "Geben sie den Namen des Programmes << endl;
cout << " welches sie starten möchten ein " << endl,
cin >> eingabe ;
// Ich kenne bis jetzt nur die Anweisung System("Name...
|
Externes Teamspeak 3 aufnahme Programm
02/13/2012 - Technical Support - 2 Replies
Hallo Leute!
Ich suche momentan ein Programm, womit man den Ganzen Ton , den man hört ( Ts Game etc...) aufnehmen kann.
Ich habe natürlich gegoogelt und das programm No23 Recorder ausprobiert!
Vielen Dank für eure Hilfe!
|
[Visual Basic 2010]Externes Programm als Admin Ausführen
06/27/2011 - .NET Languages - 3 Replies
Hey,
wie der Titel schon Sagt:
Ich suche einen Code oder Hilfe wie ich ein Externes Programm wie z.B. 'Warrock' als Admin ausführe, wenn man auf den Button klickt.
P.S: Ihr solltet nicht kommen mit:
Rechtsklick->Als Admin ausführen
|
Externes Programm über WoW-Addon öffnen? [LUA]
01/14/2011 - General Coding - 4 Replies
Ist es möglich mit Lua ein WoW-Addon zu schreiben, welches eine lokale .exe-Datei außerhalb des World of Warcraf-Ordners aufrufen (also öffnen) kann? Und wenn ja, wie?
lg Deividas
|
All times are GMT +1. The time now is 15:03.
|
|