Einzelnen Beitrag anzeigen

wk_one

Registriert seit: 19. Mai 2003
26 Beiträge
 
Delphi 7 Professional
 
#7

Re: prüfen ob MSXML4 installiert ist

  Alt 2. Okt 2003, 13:53
Danke euch für die Hinweise.

Falls es jemanden interessiert
so funktioniert es auch unter WinXP:

Delphi-Quellcode:
function msxml4Exists():boolean;
var
  reg :TRegistry;
  s:String;
begin
  reg:= TRegistry.Create(KEY_READ);
  if (reg<>nil)then
  begin
    with reg do try
      RootKey := HKEY_CLASSES_ROOT;
      if (OpenKey('CLSID\'+ GUIDToString(CLASS_DOMDocument40) +'\InProcServer32',false)) then
      try
        s:=ReadString('');
      finally
        CloseKey;
      end;
    finally
      Free;
    end;
  end;

  //---Wenn in der Pfadangabe %SystemRoot% vorkommt (bei WinXP)
  if pos('%SystemRoot%',s)>0 then
  begin
    s:= getSysDir() + ExtractFileName(s);
  end;

  result:=FileExists(s);

end;
Delphi-Quellcode:
function getSysDir():String;
var
  sysdir:String;
begin
  SetLength(sysdir,254);
  GetSystemDirectory(@sysdir[1],length(sysdir));
  //---Da die Zeichenkette nun 255 Zeichen lang ist, existieren NULL Zeichen diese werden in nächter Zeile entfernt
  Delete(sysdir,pos(chr(0),sysdir),length(sysdir)-pos(chr(0),sysdir)+1);
  result :=SysDir+'\';
end;
  Mit Zitat antworten Zitat