Einzelnen Beitrag anzeigen

shmia

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

Re: MSXML-Version auslesen, wenn überhaupt installiert

  Alt 18. Jun 2008, 14:52
Mit folgender Funktion geht das etwas eleganter:
Delphi-Quellcode:
function ProgIDExists(const ProgID:WideString):Boolean;
var
   tmp : TGUID;
begin
   Result := Succeeded(CLSIDFromProgID(PWideChar(ProgID), tmp));
end;
Damit wird kein Objekt erzeugt, dass man dann trotzdem nicht haben möchte.
Letztendlich macht CLSIDFromProgID nichts anderes, als in die Registry zu schauen; aber eben auf dem offiziellen Weg.
Delphi-Quellcode:
if ProgIDExists('Msxml2.DOMDocument.6.0') then
   result := 6
else if ProgIDExists('Msxml2.DOMDocument.5.0') then
   ...
Zu den ProgIDs siehe: http://msdn.microsoft.com/en-us/library/ms757837(VS.85).aspx
Andreas
  Mit Zitat antworten Zitat