Bisher habe ich keine Probleme mit de rneuen Version festgestellt.
Beiträge von gmmg
-
-
Hallo Sven,
habe mal die v.3.3.18.0 installiert und schaue mal ob mir etweas auffällt.
Danke für deine Info.
VG Marcel
-
Hallo AspirinJunkie,
im Post #8 stehenden Forumslink geht es weiter. Als ich für dieses Thema was getestet hatte, ist mir aufgefallen, dass "calc.exe" nicht die korrekte Prozess ID direkt nach dem starten liefert.BeitragRE: 2 Apps abwechselnd anzeigen lassen
Alles schon gemacht (ein sich ändernder Exename lässt sich aber nicht dynamisch einfach mal so abfangen, ohne ihn manuell mit anzugeben, was ich vermeiden wollte, der calc war auch nur zum testen da).
Aber ich nehme das trotzdem mal als Beispiel:
- calc.exe gestartet -> pid: 24316
- CalculatorApp.exe pid über ProcessList ausgelesen -> pid: 2452
- msedge.exe gestartet -> pid: 31180
- msedge.exe pid über ProcessList ausgelesen -> 13 pids aber nicht die 31180
Oder ist das Problem nur bei mir, weil…
Moombas20. Februar 2026 um 13:09 -
Hallo Zusammen,
ich würde hier zumachen und auf den folgenden Post verweisen. Dort geht es ja im Beispiel um das konkrete Problem, dass bei bestimmten Programmen die PID nicht gelesen wird.
BeitragRE: 2 Apps abwechselnd anzeigen lassen
Alles schon gemacht (ein sich ändernder Exename lässt sich aber nicht dynamisch einfach mal so abfangen, ohne ihn manuell mit anzugeben, was ich vermeiden wollte, der calc war auch nur zum testen da).
Aber ich nehme das trotzdem mal als Beispiel:
- calc.exe gestartet -> pid: 24316
- CalculatorApp.exe pid über ProcessList ausgelesen -> pid: 2452
- msedge.exe gestartet -> pid: 31180
- msedge.exe pid über ProcessList ausgelesen -> 13 pids aber nicht die 31180
Oder ist das Problem nur bei mir, weil…
Moombas20. Februar 2026 um 13:09 Danke
Gruß Marcel
-
Hab's oben nochmal den quelltext angepasst. so bekomme ich die Pids.
-
Wie prüfst du denn die Pids, wenn du immer nur $pid erstellst? Weiter unten greifst du dann auf die $iPID zu.
Bei der Calc.exe heißt der Process dann auch "CalculatorApp.exe"
$pid = ProcessExists("CalculatorApp.exe")
so kommen die korrekten PID's
AutoIt
Alles anzeigen;Global $Programm[2][3] = [[2, "C:\Windows\System32\notepad.exe", "C:\Windows\System32\calc.exe"]] Global $Programm[2][3] = [[2, "notepad.exe", "calc.exe"]] Global $killSwitch = False If Check_Programs() then Loop() Func Check_Programs() Local $pid, $pidNotepad, $pidcalc For $i = 1 to $Programm[0][0] MsgBox(0,"",$Programm[0][$i]) ;$pid = ProcessExists("CalculatorApp.exe") ;$pid = ProcessExists("notepad.exe") If ($Programm[0][$i]) = "notepad.exe" Then MsgBox(0,"","test") If $pidNotepad = 0 Then Run($Programm[0][$i]) Sleep(1500) $pidNotepad = ProcessExists("notepad.exe") Consolewrite($Programm[0][$i] & ": " & $pidNotepad & @CRLF) If $pidNotepad = 0 Then Return False EndIf $pidcalc = ProcessExists($Programm[0][$i]) If $Programm[0][$i] = "calc.exe" Then If $pidcalc = 0 Then Run($Programm[0][$i]) Sleep(1500) $pidcalc = ProcessExists("CalculatorApp.exe") Consolewrite($Programm[0][$i] & ": " & $pidcalc & @CRLF) If $pidcalc = 0 Then Return False EndIf ;Consolewrite($Programm[0][$i] & ": " & $pidNotepad & @CRLF & $pidcalc) Sleep(2000) ;$Programm[1][$i] = _WinActivatePID($pid) Next Return True EndFunc -
Moombas hört sich nach meinem Problem an. Da hatte ich bei der Calc.exe auch das Problem.
BeitragRE: Windows 11 Calculator - Prozess PID herausfinden
Schnuffel , danke ich prüfe weiter
Kommt mir auch komisch vor, dass es machmal nicht geht.
So funktioniert es bei mir auch, lasse ich das Sleep weg, kommt auch ein 0 Wert zurück. Scheinbar braucht die Anwendung zu lange oder das Scxript ist zu schnell.
(Quelltext, 10 Zeilen)
gmmg20. Februar 2026 um 09:34 Eventuell hilft es weiter
-
Schnuffel , danke ich prüfe weiter
Kommt mir auch komisch vor, dass es machmal nicht geht.So funktioniert es bei mir auch, lasse ich das Sleep weg, kommt auch ein 0 Wert zurück. Scheinbar braucht die Anwendung zu lange oder das Scxript ist zu schnell.
-
Ich muss das Thema nochmal aufgreifen. Auch am anderen PC geht das nicht immer, wenn ich es mehrfach hintereinander starte.
Gruß Marcel
-
mit dem Beispiel kannst du ja auch probieren:
AutoIt
Alles anzeigenHotKeySet("{ESC}", "KillAll") Opt("WinTitleMatchMode", 2) $pid1 = "" $pid2 = "" $pid1 = ProcessExists("mspaint.exe") ;MsgBox(0,"",$pid1,2) If $pid1 = 0 Then Run("mspaint.exe") $pid1 = ProcessExists("mspaint.exe") EndIf ;MsgBox(0,"",$pid1,5) $pid2 = ProcessExists("CalculatorApp.exe") ;MsgBox(0,"",$pid2,2) If $pid2 = 0 Then Run("calc.exe") Sleep(1500) $pid2 = ProcessExists("CalculatorApp.exe") EndIf ;MsgBox(0,"",$pid2,5) ; Warten bis Fenster existieren WinWait("[CLASS:MSPaintApp]") WinWait("Rechner") While 1 ; --- Notepad --- If ProcessExists($pid1) And WinExists("[CLASS:MSPaintApp]") Then WinActivate("[CLASS:MSPaintApp]") WinWaitActive("[CLASS:MSPaintApp]") Sleep(5000) EndIf ; --- Calculator --- If ProcessExists($pid2) And WinExists("Rechner") Then WinActivate("Rechner") WinWaitActive("Rechner") Sleep(5000) EndIf Sleep(200) WEnd Func KillAll() If ProcessExists($pid1) Then ProcessClose($pid1) If ProcessExists($pid2) Then ProcessClose($pid2) Exit EndFunc -
AspirinJunkie habe jetzt mal einen anderen PC genommen, da geht es auch.
Ich mache den PC jetzt einfach mal neu.
Danke fürs testen.
-
Hallo Zusammen,
benutzt jemand schon die Autoit 3.3.18.0 Version?
Gibt es da bekannte Probleme?
Gruß Marcel
-
Hallo Zusammen,
ich wollte für einen anderen Post hier im Forum ein Beispiel erstellen und dabei ist mir aufgefallen, dass ich bei Win11, wenn ich den integrierten Rechner öffne und mir die PID mit ProcessExists ausgeben will, hier nichts zurück kommt, mit ProcessList geht es aber.
Mache ich da einen Fehler?
AutoItLocal $aProcessList = ProcessList("CalculatorApp.exe") For $i = 1 To $aProcessList[0][0] ConsoleWrite(@CRLF & $aProcessList[$i][0] & @CRLF & "PID: " & $aProcessList[$i][1]) ; funktioniert Next $pidCalc = ProcessExists("CalculatorApp.exe") ConsoleWrite(@CRLF & "PID: " & $pidCalc & @CRLF) ; funktioniert nichtGruß Marcel
-
das ist dein Post dazu bei "Gute Frage"
App die 2 Programme abwechselnd anzeigt?Hi,Du kannst beispielsweise Autolt dafür installieren. Das ist eine Skriptsprache, mit der man mit wenig Kenntnissen und wenig aufwand in Windows verschiedene…www.gutefrage.netEin einfaches Beispiel:
AutoIt
Alles anzeigenHotKeySet("{ESC}", "KillAll") Run("notepad.exe") Run("calc.exe") While 1 WinActivate("Rechner") Sleep(5000) WinActivate("Unbenannt") Sleep(5000) WEnd Func KillAll() WinClose("Rechner") WinClose("Unbenannt") Exit EndFuncGruß Marcel
-
Hallo Peter,
falls du Outlook benutzt, da lässt sich sicher was mit der Outlook UDF machen.
Gruß Marcel
-
Hallo Sven,
danke und vor allem wünsche ich dir auch eine schöne Weihnachtszeit.
Gruß Marcel
-
Hallo Sven,
ich habe den Updateprozess jetzt einfach per ini Versionsabfrage umgesetzt.
Diese ini liegt einmal auf dem Server und lokal auf dem PC.
Gruß Marcel
-
Hallo Sven, wir nutzen auch noch MS Access DB

-
Danke für deine Antwort. schau ich mir dann am Mittwoch nochmal an. Hab morgen erstmal Urlaub

Viele Grüße
Marcel
-
Hallo Sven,
also den Updater habe ich mir so gedacht:
1. es wird eine neue Signatur.html + txt in den Netzwerkpfad yxz gelegt und eine Versionsnummer angegeben.
2. das lokal installierte OutlookSignatur Skript überprüft beim starten auf eine geänderte Versionsnummer, wenn die Versionsnummer vom Netzwerkpfad yxz höher ist, kopiere die neuen Dateien in den lokalen Pfad und überschreibe die alten.
Das geht doch am besten mit einer Version.ini oder? Eventuell so?
AutoIt
Alles anzeigen$Signatur_ini_server = IniRead($ServerSharePath & "Signatur.ini", "INFO", "VERSION", "NotFound") $Signatur_ini_client = IniRead("C:\Program Files (x86)\erf24-Outlook-Signatur\Signatur.ini", "INFO", "VERSION", "NotFound") If $Signatur_ini_server > $Signatur_ini_client Then ;kopiere Files Endif ;weiterer ProgrammablaufAktuell läuft das Script beim Login und es besteht die Möglichkeit die Exe über eine Desktopverknüpfung anzuklicken. Zum Beispiel für HO User, die ja erst noch die VPN aufbauen müssen.
Gruß Marcel