Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#2

AW: Automation server registrieren

  Alt 28. Sep 2010, 13:09
Nun habe folgende Fragen:
1. Ich habe hier eine Anwendung die ich nicht selber geshrieben habe. Diese beinhaltet ebenfalls einen automation server.
Wenn man das Programm zum 1. startet, wird dieser automatisch registriert. Allerdings kann ich im Quellcode nicht sehen, wie das ausgelösst wird.
In der VCL findet das in der Unit ComServ innerhalb von constructor TComServer.Create statt.

2. Wie prüft man am besten ob der Server bereits registriert wurde?
Einfach in der Registry nachschauen ob es einen Eintrag für die entsprechende CLSID gibt?
Im Einfachsten prüft man die ProgId.
Delphi-Quellcode:
function ProgIDExists(const ProgID:WideString):Boolean;
var
   tmp : TGUID;
begin
   Result := Succeeded(CLSIDFromProgID(PWideChar(ProgID), tmp));
end;

if ProgIDExists('Word.Application') then
   ShowMessage('MS Word ist instaliert');
Andreas
  Mit Zitat antworten Zitat