Hallo,
ich arbeite mit dem C++Builder 3 von Borland und erstelle VCL-Programme. Von Delphi hab' ich komplett keine Ahnung. Nun will ich mit Inno Setup 5.2.3 einen Install-Assistenten für ein Programm zusammenstellen. Dieser beinhaltet eine zusätzliche Installation der BDE (Borland Database Engine) bei Bedarf. Ich möchte nun herausfinden, ob die BDE installiert ist und wenn ja, in welcher Version. Dazu kann man im Inno Setup-Script (das Script enthält die Anweisungen, was der Install-Assistent später so machen soll, wie er aussieht etc.) in einem gesonderten Code-Bereich Delphi-Pascal-Code(?) einfügen. Mit solchem Code möchte ich nun drei Dinge machen:
1. in der Registry prüfen, ob die BDE installiert ist. Das geht wohl so:
2. Den Wert des Eintrags "DllPath" dieses Schlüssels müsste ich nun weiterverwenden (auslesen und in Variable speichern?). Dann könnte ich
3. die Dateiversion der Datei bdeadmin.exe prüfen. Diese liegt nämlich in dem Pfad, der unter DllPath eingetragen ist. Manuell erhalte ich die Version, wenn ich unter WinXP->Arbeitsplatz->rechte Maustaste auf bdeadmin.exe klicke und dann auf Reiter "Version" gehe.
Also kurz:
Wie kann ich den Pfad (Wert) aus dem Eintrag DllPath des Schlüssel lesen und weiterverwenden?
Wie kann ich die Versionsinformation aus der bdeadmin.exe lesen, welche in zuvor ermitteltem Pfad liegt?
Ich hoffe ihr könnt mir helfen - wie gesagt, Delphi ist überhaupt nicht mein Gebiet ...
MfG
ich arbeite mit dem C++Builder 3 von Borland und erstelle VCL-Programme. Von Delphi hab' ich komplett keine Ahnung. Nun will ich mit Inno Setup 5.2.3 einen Install-Assistenten für ein Programm zusammenstellen. Dieser beinhaltet eine zusätzliche Installation der BDE (Borland Database Engine) bei Bedarf. Ich möchte nun herausfinden, ob die BDE installiert ist und wenn ja, in welcher Version. Dazu kann man im Inno Setup-Script (das Script enthält die Anweisungen, was der Install-Assistent später so machen soll, wie er aussieht etc.) in einem gesonderten Code-Bereich Delphi-Pascal-Code(?) einfügen. Mit solchem Code möchte ich nun drei Dinge machen:
1. in der Registry prüfen, ob die BDE installiert ist. Das geht wohl so:
Code:
if (RegValueExists(HKLM, 'SOFTWARE\Borland\Database Engine', 'DllPath')) then ...
3. die Dateiversion der Datei bdeadmin.exe prüfen. Diese liegt nämlich in dem Pfad, der unter DllPath eingetragen ist. Manuell erhalte ich die Version, wenn ich unter WinXP->Arbeitsplatz->rechte Maustaste auf bdeadmin.exe klicke und dann auf Reiter "Version" gehe.
Also kurz:
Wie kann ich den Pfad (Wert) aus dem Eintrag DllPath des Schlüssel lesen und weiterverwenden?
Wie kann ich die Versionsinformation aus der bdeadmin.exe lesen, welche in zuvor ermitteltem Pfad liegt?
Ich hoffe ihr könnt mir helfen - wie gesagt, Delphi ist überhaupt nicht mein Gebiet ...
MfG
Comment