Prüfen, ob Programm läuft

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
Ich934
Lazarusforum e. V.
Beiträge: 316
Registriert: So 5. Mai 2019, 16:52
OS, Lazarus, FPC: ArchLinux und Windows mit FPCUPdeluxe (L: 2.0.X, FPC 3.2.0)
CPU-Target: x86_64, i386
Wohnort: Bayreuth

Prüfen, ob Programm läuft

Beitrag von Ich934 »

Hallo,

existiert eine Möglichkeit (gibt es sicher :D ) zu prüfen, ob ein Programm läuft?

Ein Update-Programm soll prüfen, ob eine Anwendung aktuell läuft und wenn das der Fall ist, darauf hinweisen und ggf. das Update der Hauptanwendung nicht anbieten. Die Funktion muss für Windows und Linux verfügbar sein. Bekannt ist der Name der ausführbaren Datei.

Unter Linux könnte ich hier z. B. ein

Code: Alles auswählen

ps aufxww | grep <Anwendung>
absetzen und somit ermitteln, ob ein entsprechender Prozess vorhanden ist. Das würde definitiv funktionieren und zum gewünschten Ergebnis kommen. Aber für Windows fehlt mir aktuell eine Lösung.

Vielen Dank.
Tipp für PostgreSQL: www.pg-forum.de

Benutzeravatar
theo
Beiträge: 10467
Registriert: Mo 11. Sep 2006, 19:01

Re: Prüfen, ob Programm läuft

Beitrag von theo »


Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Prüfen, ob Programm läuft

Beitrag von af0815 »

Da gibt es bereits fertige Komponenten die auf eine 2te Instanz prüfen. Das Beispiel unten gibt es auch in OPM und ist MultiPlattform
Beispiel:
https://wiki.freepascal.org/UniqueInstance
https://wiki.freepascal.org/AppIsRunning
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Ich934
Lazarusforum e. V.
Beiträge: 316
Registriert: So 5. Mai 2019, 16:52
OS, Lazarus, FPC: ArchLinux und Windows mit FPCUPdeluxe (L: 2.0.X, FPC 3.2.0)
CPU-Target: x86_64, i386
Wohnort: Bayreuth

Re: Prüfen, ob Programm läuft

Beitrag von Ich934 »

UniqueInstane bringt mir nichts. Die kenne ich und setze ich in anderen Projekten ein. Würde aber verhindern, dass ich das Programm zwei mal starten kann, was ja grundsätzlich möglich sein sollte.

Aber das AppIsRuning scheint genau die Lösung meines Problemes zu sein. Vielen Dank!
Tipp für PostgreSQL: www.pg-forum.de

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Prüfen, ob Programm läuft

Beitrag von af0815 »

Ich934 hat geschrieben:
Di 10. Jan 2023, 08:59
UniqueInstane bringt mir nichts. Die kenne ich und setze ich in anderen Projekten ein.
Es ist nicht verboten in die Sourcen zu schauen, wie UniqueInstance das detektiert und denselben Mechanismus verwenden, der ja gut getestet ist.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten