![]() |
Delphi-Version: 2009
Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft
Hallo,
unter ![]() Kann es sein, dass es ab Delphi 2009 nicht mehr funktioniert?
Delphi-Quellcode:
gibt immer FALSE zurück, auch wenn Word und Excel geöffnet sind. Kann das jemand bestätigen und hat jemand eine alternative Lösung?
Result := GetActiveObject(ClassID, nil, Unknown) = S_OK;
Danke! amigage |
AW: Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft
Funktioniert es, wenn Du den Parameter "ClassName" als AnsiString deklarierst?
|
AW: Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft
Hallo DeddyH,
nein, leider nicht. :? Obwohl es naheliegend gewesen wäre. Ich habe den Code auch einmal mit einer älteren Delphi-Version kompiliert und da funktioniert es problemlos. Es muss also wirklich an Delphi 2009 liegen. |
AW: Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft
Versuche es einmal damit
Delphi-Quellcode:
function IsExeRunning(const AExeName: string): boolean;
var h: THandle; p: TProcessEntry32; begin Result := False; p.dwSize := SizeOf(p); h := CreateToolHelp32Snapshot(TH32CS_SnapProcess, 0); try Process32First(h, p); repeat Result := AnsiUpperCase(AExeName) = AnsiUpperCase(p.szExeFile); until Result or (not Process32Next(h, p)); finally CloseHandle(h); end; end; |
AW: Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft
Entwarnung!
Nach einem Neustart des System klappte die Abfrage auch in Delphi 2009. Warum auch immer :lol: Vermutlich war der OLE-Server nicht mehr vorhanden? @simmi: das ist natürlich eine noch bessere Variante zu überprüfen, ob ein bestimmtes Programm läuft. Danke. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:02 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