Die folgende Funktion hat
MathiasSimmack in dem Beitrag
Multi-Projekt-Organizer (kurz MPO) veröffentlicht.
Die Funktion überprüft das System, ob MS
XML 4.0 installiert wurde.
Delphi-Quellcode:
function DoesXMLExist: boolean;
function ExpandEnvStr(
const szInput:
string):
string;
const
MAXSIZE = 32768;
begin
SetLength(Result,MAXSIZE);
SetLength(Result,ExpandEnvironmentStrings(pchar(szInput),
@Result[1],length(Result)));
end;
var
reg : TRegistry;
s :
string;
begin
Result := false;
reg := TRegistry.Create(KEY_READ);
if(reg <>
nil)
then
with reg
do try
RootKey := HKEY_CLASSES_ROOT;
if(OpenKey('
CLSID\' + GuidToString(CLASS_DOMDocument40) +
'
\InProcServer32',false))
then
try
s := ReadString('
');
Result := fileexists(ExpandEnvStr(s));
finally
CloseKey;
end;
finally
Free;
end;
end;
Die Funktion sollte im Projektquelltext (*.dpr) stehen und vor dem Initialisieren der Forms aufgerufen werden. Auf die Weise wird die Prüfung bereits wirksam, noch bevor überhaupt irgendein Fenster des Programms erstellt wird bzw. erscheint .
Delphi-Quellcode:
uses
{...},
Registry,
Windows,
SysUtils,
MSXML4_TLB,
// die TLB von MSXML u.U. auch MSXML2_TLB
Dialogs;
{...}
begin
if (
not DoesXMLExist)
then begin
MessageDlg('
XML 4.0 muss installiert sein, damit Sie das Programm starten können.', mtError, [mbOK], 0);
Exit;
end;
Application.Initialize;
Application.Title := '
MPMS';
Application.CreateForm(TfrmMain, frmMain);
Application.Run;
end.
© 2003 by Mathias Simmack und Christopher "Chakotay1308" Harms