Programm beenden, blutiger Anfänger
Moderator: jNizM
Programm beenden, blutiger Anfänger
Hallo Forum !
Wie schon aus dem Betreff ersichtlich, mache ich die ersten zaghaften Versuche mit AHK, meine Frage:
Mit welchem Befehl kann ich ein ganz bestimmtes Progarmm beenden und wie lautet die korrekte Syntax dazu ?
Wäre schön, wenn mir jemand helfen könnte.
bye
Wie schon aus dem Betreff ersichtlich, mache ich die ersten zaghaften Versuche mit AHK, meine Frage:
Mit welchem Befehl kann ich ein ganz bestimmtes Progarmm beenden und wie lautet die korrekte Syntax dazu ?
Wäre schön, wenn mir jemand helfen könnte.
bye
Last edited by gregster on 15 Oct 2021, 11:37, edited 1 time in total.
Reason: Topic moved from 'Ask For Help'. Falsche Sprache...
Reason: Topic moved from 'Ask For Help'. Falsche Sprache...
Re: Programm beenden, blutiger Anfänger
Hi,
Um ein bestimmtes Fenster zu schließen,
z.B Taschenrechner
WinClose, Rechner
Um schließen zu erzwingen:
auch hier an Beispiel von Taschenrechner
WinKill, Rechner
Den FensterTitel (Rechner) kannst du mit Window Spy ermitteln, die mit AHK mit installiert wird
Um ein bestimmtes Fenster zu schließen,
z.B Taschenrechner
WinClose, Rechner
Um schließen zu erzwingen:
auch hier an Beispiel von Taschenrechner
WinKill, Rechner
Den FensterTitel (Rechner) kannst du mit Window Spy ermitteln, die mit AHK mit installiert wird
Re: Programm beenden, blutiger Anfänger
edit...hab zu lang zum tippen gebraucht....
Hallo @Boss55
kommt drauf an! Tolle Antwort, gell?
1. Alt+F4 --> send, {ALT DOWN}{F4}{ALT UP}
2. Klickreihenfolge mit der Maus simulieren MouseClick
3. Tastenreihenfolge je nach Programm mit Send simulieren --> send, {ALT} --> send, d --> send, b
4. Befehl WinKil, ...l
5. Befehl WinClose, ...
6. Befehl Process, Close...
Je nachdem was die Anforderung ist. Z.B sollen irgendwelche geöffnete Dokumente gespeichert werden?, Soll ein evtl aufkommender "Wirklich beenden" Dialog abgefangen werden? Das muss halt beachtete werden
ein einfaches Script für den Notepad-Editor (je nachdem ob mit geändertem Inhalt ist der Fenstername mit einem * versehen:
Hallo @Boss55
kommt drauf an! Tolle Antwort, gell?
1. Alt+F4 --> send, {ALT DOWN}{F4}{ALT UP}
2. Klickreihenfolge mit der Maus simulieren MouseClick
3. Tastenreihenfolge je nach Programm mit Send simulieren --> send, {ALT} --> send, d --> send, b
4. Befehl WinKil, ...l
5. Befehl WinClose, ...
6. Befehl Process, Close...
Je nachdem was die Anforderung ist. Z.B sollen irgendwelche geöffnete Dokumente gespeichert werden?, Soll ein evtl aufkommender "Wirklich beenden" Dialog abgefangen werden? Das muss halt beachtete werden
ein einfaches Script für den Notepad-Editor (je nachdem ob mit geändertem Inhalt ist der Fenstername mit einem * versehen:
Code: Select all
#SingleInstance
#WinActivateForce
;Fenstername = So heißt mein Programmfenster
Fenstername := "Unbenannt - Editor"
Abfragefenster := "Editor"
If WinExist(Fenstername)
WinClose, %Fenstername%
If WinExist("*" Fenstername)
{
MsgBox, hier
WinActivate, *%Fenstername%
WinWaitActive, *%Fenstername%
Send, {ALT}
sleep, 100
send, d
Sleep, 100
Send, b
WinWaitActive, %Abfragefenster%
send, {Right}
sleep, 100
send {Enter}
}
ExitApp
Re: Programm beenden, blutiger Anfänger
Hallo ahk Fan !
Erst mal vielen Dank für deine ausführliche Antwort . Sorry, ich hätte deutlich mehr Details in meiner Frage angeben sollen.
Das Programm wird nicht im Fenstermodus ausgeführt sondern versteckt sich in der Taskleiste bei den ausgeblendeten Objekten.
Aber ganz gleich welchen Befehl ich versuche, mein Favorit war
Process Close, das Ding lässt sich einfach nicht abschiessen.
Hintergrund ist folgender:
Das Tool (Taskbar Eliminator) blendet die Taskleiste mit dem Hotkey ALT+T aus und ein. Meine Idee ist, dies aus einer Batch heraus zu tun. Die Übermuttlung des Hotkeys mittels dem Befehl send funktioniert grundsätzlich, jedoch nur beim ersten Mal(ausblenden), bei der erneuten Übermittlung des Hotkeys(einblenden), gibt das Tool (nicht AHK), die Meldung zurück (frei übersetzt) das bereits eine ältere Instanz läuft und man in der (nicht vorhandenen) Hilfedatei unter #single instance nachsehen sollte (wie denn bitte?). Ist ein Bug, der auch oft auftritt, wenn man das Tool ohne AHK nutzt
Mein Plan also, zur Umgehung von Bug und Meldung das Tool vor dem sende des Hotkeys zu beenden, der Hotkey startet es dann erneut, aber daran scheitere ich gerade grandios.
Das Ganze sind für mich als alten Zausel von 66 Jahren ohnehin böhmische Dörfer.
Hier noch ein paar Info´s
Programmname Taskbar Eliminator
Ausführende Dateu Taskbar Eliminator.exe
Taskmanager Name Remove The Windows Taskbar
Betriebssystem Windows 10 Pro 64bit
Vielleicht ist das Ganze wegen der Zickigkeit des Tool´s nicht möglich, vielleicht bin ich auch nur zu doof dafür.
Wäre super, wenn du dich nochmals damit befassen könntest.
Sxhönes Wocheende
bye
Erst mal vielen Dank für deine ausführliche Antwort . Sorry, ich hätte deutlich mehr Details in meiner Frage angeben sollen.
Das Programm wird nicht im Fenstermodus ausgeführt sondern versteckt sich in der Taskleiste bei den ausgeblendeten Objekten.
Aber ganz gleich welchen Befehl ich versuche, mein Favorit war
Process Close, das Ding lässt sich einfach nicht abschiessen.
Hintergrund ist folgender:
Das Tool (Taskbar Eliminator) blendet die Taskleiste mit dem Hotkey ALT+T aus und ein. Meine Idee ist, dies aus einer Batch heraus zu tun. Die Übermuttlung des Hotkeys mittels dem Befehl send funktioniert grundsätzlich, jedoch nur beim ersten Mal(ausblenden), bei der erneuten Übermittlung des Hotkeys(einblenden), gibt das Tool (nicht AHK), die Meldung zurück (frei übersetzt) das bereits eine ältere Instanz läuft und man in der (nicht vorhandenen) Hilfedatei unter #single instance nachsehen sollte (wie denn bitte?). Ist ein Bug, der auch oft auftritt, wenn man das Tool ohne AHK nutzt
Mein Plan also, zur Umgehung von Bug und Meldung das Tool vor dem sende des Hotkeys zu beenden, der Hotkey startet es dann erneut, aber daran scheitere ich gerade grandios.
Das Ganze sind für mich als alten Zausel von 66 Jahren ohnehin böhmische Dörfer.
Hier noch ein paar Info´s
Programmname Taskbar Eliminator
Ausführende Dateu Taskbar Eliminator.exe
Taskmanager Name Remove The Windows Taskbar
Betriebssystem Windows 10 Pro 64bit
Vielleicht ist das Ganze wegen der Zickigkeit des Tool´s nicht möglich, vielleicht bin ich auch nur zu doof dafür.
Wäre super, wenn du dich nochmals damit befassen könntest.
Sxhönes Wocheende
bye
Re: Programm beenden, blutiger Anfänger
Führe folgende Script aus:
Was wird angezeigt?
Wenn Sie nur die Taskleiste Ein-, und Ausblenden möchten, gibt es dafür ein AHK-Lösung von Teadrinker, dass bei mir einwandfrei funktioniert.
Code: Select all
Process, Close, Taskbar Eliminator.exe
MsgBox, % ErrorLevel
Wenn Sie nur die Taskleiste Ein-, und Ausblenden möchten, gibt es dafür ein AHK-Lösung von Teadrinker, dass bei mir einwandfrei funktioniert.
Code: Select all
#NoEnv
#Singleinstance Force
;#NoTrayIcon
Setworkingdir,% A_ScriptDir
^t:: HideShowTaskbar(hide := !hide) ;Strg+T blendet die Taskleiste ein und aus
HideShowTaskbar(action) {
static ABM_SETSTATE := 0xA, ABS_AUTOHIDE := 0x1, ABS_ALWAYSONTOP := 0x2
VarSetCapacity(APPBARDATA, size := 2*A_PtrSize + 2*4 + 16 + A_PtrSize, 0)
NumPut(size, APPBARDATA), NumPut(WinExist("ahk_class Shell_TrayWnd"), APPBARDATA, A_PtrSize)
NumPut(action ? ABS_AUTOHIDE : ABS_ALWAYSONTOP, APPBARDATA, size - A_PtrSize)
DllCall("Shell32\SHAppBarMessage", UInt, ABM_SETSTATE, Ptr, &APPBARDATA)
}
Re: Programm beenden, blutiger Anfänger
also wenn es wirklich nur um die Taskbar geht, würde ich die Version von @KHA nehmen, da kann man auf das komische Progamm "Taskbar Eliminator" verzichten, das AHK_Script macht das genauso und man hat Einfluß auf den Code...man müsste nur am Anfang evtl #Persistent einfügen.
ansonsten:
- mal schau ob der Dateiname/Programmname wirklich mit Leerzeichen geschrieben wird. Am Besten über den Task-Manager
Nicht aufgeben! Mit 66 Jahren da fängt das (Autohotkey-)Leben an! Und Respekt, das Sie das jetzt angehen.
ansonsten:
- mal schau ob der Dateiname/Programmname wirklich mit Leerzeichen geschrieben wird. Am Besten über den Task-Manager
Nicht aufgeben! Mit 66 Jahren da fängt das (Autohotkey-)Leben an! Und Respekt, das Sie das jetzt angehen.
Re: Programm beenden, blutiger Anfänger
Moin,
Das 'Tool' ist höchtstwahrscheinlich ein kompiliertes AHK-Skript. Wenn Du den eingebetteten Sourcecode nicht extrahieren kannst, solltest Du besser auf eine Lösung zurückgreifen, deren Code Du kennst, wie z.B. das von @KHA gezeigte Skript.Boss55 wrote:... gibt das Tool (nicht AHK), die Meldung zurück (frei übersetzt) das bereits eine ältere Instanz läuft und man in der (nicht vorhandenen) Hilfedatei unter #single instance nachsehen sollte (wie denn bitte?).
Re: Programm beenden, blutiger Anfänger
N´abend !
Nochmals vielen Dank für eure Antworten. Nutze jetzt das Script von AHK, funktioniert wie gewünscht und lässt sich easy von einer Batch aus aufrufen.
Bin schon etwas geflasht, was man mit AHK alles machen kann, vor allem wenn man in so einem coolen Forum diese Unterstützung erhält.
Bis demnäxt zu meinem nächsten Post, der bestimmt nicht lange auf sich warten lässt.
bye
Nochmals vielen Dank für eure Antworten. Nutze jetzt das Script von AHK, funktioniert wie gewünscht und lässt sich easy von einer Batch aus aufrufen.
Bin schon etwas geflasht, was man mit AHK alles machen kann, vor allem wenn man in so einem coolen Forum diese Unterstützung erhält.
Bis demnäxt zu meinem nächsten Post, der bestimmt nicht lange auf sich warten lässt.
bye