function GetHKLM: Integer;
begin
if IsWin64 then
Result := HKLM64
else
Result := HKLM32;
end;
function FirebirdDefaultDir() :string;
begin
if RegQueryStringValue(GetHKLM(),'SOFTWARE\Firebird Project\Firebird Server\Instances','Defaultinstance',result) then
Result:=AddBackSlash(Result)
else
Result:='';
end;
function isNotFirebird() :boolean;
var
s :string;
begin
Result:=true;
s:=FirebirdDefaultDir();
if s<>'' then
Result:= not FileExists(s+'bin\fbClient.dll') and not FileExists(s+'WOW64\fbClient.dll');
end;
Tags: InnoSetup
Nach der Installation soll eine Datei in Abhängigkeit von der Windowsversion in ein Verzeichnis kopiert werden.
Die Datei qf steht im Installationsverzeichnis bereit.
Das Zielverzeichnis zv soll ab Windows-Vista das Verzeichnis
C:\Users\user_name\Appdata\Local\ sein. In älteren Windowsversionen wird die Datei im Programmverzeichnis gespeichert.
[Code]
procedure CurStepChanged(CurStep: TSetupStep);
var qf,zf,zv:string;
Version: TWindowsVersion;
begin
if CurStep = ssPostInstall then begin
GetWindowsVersionEx(Version);
if Version.Major>=6 then
zv:=ExpandConstant('{localappdata}\wnftest\')
else
zv:=ExpandConstant('{app}\');
qf:=ExpandConstant('{src}\einstellungen.dat');
zf:=zv+'kita_fb.liz';
MsgBox(IntToStr(Version.Major)+#13+
qf+#13+zv+#13+zf, mbInformation, MB_OK);
forcedirectories(zv);
FileCopy( qf, zf,FALSE);
end
end;
Tags: win7 InnoSetup