AGB  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft

Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft

Ein Thema von amigage · begonnen am 13. Sep 2010 · letzter Beitrag vom 13. Sep 2010
Antwort Antwort
amigage

Registriert seit: 11. Nov 2005
129 Beiträge
 
Delphi XE2 Professional
 
#1

Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft

  Alt 13. Sep 2010, 12:29
Delphi-Version: 2009
Hallo,

unter http://www.swissdelphicenter.ch/de/showcode.php?id=294 findet sich ein schöner Code, wie man überpüft ob eines der o.g. Programme läuft.

Kann es sein, dass es ab Delphi 2009 nicht mehr funktioniert?

Result := GetActiveObject(ClassID, nil, Unknown) = S_OK; 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?

Danke!

amigage
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
21.057 Beiträge
 
Delphi XE Professional
 
#2

AW: Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft

  Alt 13. Sep 2010, 12:33
Funktioniert es, wenn Du den Parameter "ClassName" als AnsiString deklarierst?
Detlef
Wenn Dein Programm nicht macht, was es soll, nenn es einfach "Version 1.0"

Delphi programming is cool
  Mit Zitat antworten Zitat
amigage

Registriert seit: 11. Nov 2005
129 Beiträge
 
Delphi XE2 Professional
 
#3

AW: Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft

  Alt 13. Sep 2010, 12:51
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.
  Mit Zitat antworten Zitat
Benutzerbild von simmi
simmi

Registriert seit: 24. Nov 2004
Ort: Röbel/Müritz
89 Beiträge
 
Delphi 2007 Architect
 
#4

AW: Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft

  Alt 13. Sep 2010, 13:14
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;
Uwe
  Mit Zitat antworten Zitat
amigage

Registriert seit: 11. Nov 2005
129 Beiträge
 
Delphi XE2 Professional
 
#5

AW: Überprüfen ob Word, Excel, Access, Outlook, Powerpoint läuft

  Alt 13. Sep 2010, 13:19
Entwarnung!

Nach einem Neustart des System klappte die Abfrage auch in Delphi 2009.
Warum auch immer 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.

Geändert von amigage (13. Sep 2010 um 13:28 Uhr)
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2012 by Daniel R. Wolf