Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Prozessliste-Auslesen klappt manchmal nicht (https://www.delphipraxis.net/174076-prozessliste-auslesen-klappt-manchmal-nicht.html)

hoika 2. Apr 2013 10:43

Prozessliste-Auslesen klappt manchmal nicht
 
Hallo,

ich stelle in einem eigenen Setup-Programm fest,
ob mein Programm läuft. Dazu durchlaufe ich die Prozessliste.
Das läuft über CreateToolhelp32Snapshot und ProcEntry.szExeFile.

Leider klappt das bei Kunden manchmal nicht.
Es wird nicht erkannt, dass das Programm läuft.
"Bei mri geht es" ...

Gibt es Beschränkungen durch Windows (ab Vista), die das Durchlaufen der Prozessliste
oder das Auslesen von szExeFile verhindern.
Ich hatte da mal was bei Vista gelesen, dass die Pfade in szExeFile nicht eingetragen werden ???

Das Setup hat kein Manifest und fordert durch den Namen "Setup" Admin-Rechte.
Das klappt auch (hoffe ich).


Was kann das sein ?


Danke


Heiko

Sir Rufo 2. Apr 2013 10:45

AW: Prozessliste-Auslesen klappt manchmal nicht
 
Ist zwar keine direkte Antwort auf deine Frage, aber wäre ein MUTEX nicht wesentlich sicherer (zuverlässiger) und einfacher in der Erkennung?

hoika 2. Apr 2013 19:28

AW: Prozessliste-Auslesen klappt manchmal nicht
 
Hallo,

Ist nicht mein Code :)
Die Frage war, gibt es einen Grund, dass ein
Programm die Prozessliste nicht lesen kann ?

Ich baue das bei Gelegenheit auf jeden Fall um.


Heiko

Luckie 2. Apr 2013 23:09

AW: Prozessliste-Auslesen klappt manchmal nicht
 
Laufen beide Programme unter dem selben Benutzerkontext?

hoika 9. Apr 2013 20:49

AW: Prozessliste-Auslesen klappt manchmal nicht
 
Hallo,

das Setup läuft als Admin, die Exe als normaler User.


Heiko

Delphi-Laie 9. Apr 2013 23:00

AW: Prozessliste-Auslesen klappt manchmal nicht
 
Zitat:

Zitat von hoika (Beitrag 1210878)
das Setup läuft als Admin, die Exe als normaler User.

Bei der Prozeßenumeration werden nach meiner Kenntnis zunächst einmal grundsätzlich immer alle Prozesse gefunden. Unterschiedlich ist, welche Informationen abrufbar sind. szExeFile wird (nach meiner Kenntnis immer zurückgeliefert), von allen Prozessen, egal, ob Admin oder nicht, egal, ob erweiterte Rechte ("Debugprivilegien") oder nicht. Einige andere Prozeßinformationen werden teilweise unterdrückt (abhängig davon, was ich im Satze davor schrieb). Das kannst Du mit meinem Programm "Prozesse" (Suchwort: Prozeßbetrachter) ausprobieren. Das ist aber noch nicht ganz vollständig und fehlerhaft, in den nächsten Tagen wird es eine nochmals verbessert Version davon bzw. dazu geben.

Ergänzung: 32-Bit-Programme auf 64 Bit? Das könnte schon des Rätsels Lösung sein. 64-Bit-Programme "sehen" unter 64 Bit tendenziell deutlich mehr.

hoika 10. Apr 2013 04:44

AW: Prozessliste-Auslesen klappt manchmal nicht
 
Hallo,

wir reden von 32 Bit.
Ich dachte mal gelesen zu haben,
Dass z.B. der Pfad unter bestimmten Umständen nicht drinsteht
(Ohne Debug-Priviligien)

Heiko


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:41 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz