有谁知道 inno setup 打包, 如果要检测一个有没有安装数据库和有没有安装框架的怎么弄,我只弄成的框架其它的出错。我是这样的,安装时要检测是否安装框架和是否安装好单机数据库,下面这样写出错。[code] function CheckDotNet4_0():boolean;
begin
Result:= not RegKeyExists(HKLM, 'SOFTWARE\Microsoft\.NETFramework\policy\v4.0');
end;
function InitializeSetup(): Boolean;
var Path:string;
ResultCode: Integer;
begin
if CheckDotNet4_0() then
begin
ExtractTemporaryFile('dotNetFx40_Full_x86_x64.exe');
Exec(ExpandConstant('{tmp}\dotNetFx40_Full_x86_x64.exe'), '', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
end ;
result:=true;
end;
var Path:string;
ResultCode: Integer;
function CheckLocalDB():boolean; begin
Result:= not RegKeyExists(HKLM, 'SOFTWARE\Microsoft\Microsoft SQL Server Local DB\Installed Versions\12.0');
end;
begin
if CheckLocalDB() then
begin
ExtractTemporaryFile('SqlLocalDB_2014_32bit.msi');
Exec(ExpandConstant('{tmp}\SqlLocalDB_2014_32bit.msi'), '', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
end ;
result:=true;
end;
begin
Result:= not RegKeyExists(HKLM, 'SOFTWARE\Microsoft\.NETFramework\policy\v4.0');
end;
function InitializeSetup(): Boolean;
var Path:string;
ResultCode: Integer;
begin
if CheckDotNet4_0() then
begin
ExtractTemporaryFile('dotNetFx40_Full_x86_x64.exe');
Exec(ExpandConstant('{tmp}\dotNetFx40_Full_x86_x64.exe'), '', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
end ;
result:=true;
end;
var Path:string;
ResultCode: Integer;
function CheckLocalDB():boolean; begin
Result:= not RegKeyExists(HKLM, 'SOFTWARE\Microsoft\Microsoft SQL Server Local DB\Installed Versions\12.0');
end;
begin
if CheckLocalDB() then
begin
ExtractTemporaryFile('SqlLocalDB_2014_32bit.msi');
Exec(ExpandConstant('{tmp}\SqlLocalDB_2014_32bit.msi'), '', '', SW_SHOWNORMAL, ewWaitUntilTerminated, ResultCode);
end ;
result:=true;
end;
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSSQLSERVER