我遇到Install-Shield问题。我创建包来安装我的项目然后使用JS(Install-Shield中的JavaScript)来检查Dotnet框架工作,如果它不存在安装Dotnet。以便JS work perfectly
和checking registry and then go for Donet Setup
。
以下是HS:
function RunDotNetEXE(hMSI)
STRING svPath;
begin
svPath = SRCDIR^"\\Req";
RegDBSetDefaultRoot (HKEY_LOCAL_MACHINE);
if (RegDBKeyExist ("SOFTWARE\\Microsoft\\.NETFramework\\v3.0")!=1) then
if (svPath!="") then
SdShowMsg ( " file not found ", TRUE );
if (LaunchAppAndWait (svPath+"\\net frame work 3.5 sp1\\dotnetfx35.exe","",WAIT) < 0) then
MessageBox ("error in installing DotNet", SEVERE);
endif;
SdShowMsg ( " Some message ", FALSE );
endif;
endif;
end;
问题:
但问题是 Windows Installer
。 WI
无法运行two or more Setup package on same time
。
所以我必须做什么,以解决我的问题! ?
答案 0 :(得分:2)
解决方案是添加.NET Framework作为先决条件:http://kb.flexerasoftware.com/doc/Helpnet/installshield15helplib/IHelpMergeModules.htm
答案 1 :(得分:2)
您不应该使用任何脚本来检查.NET框架。 Installshield允许您添加.NET框架作为先决条件。这将检查框架是否已安装并在必要时安装。
我在我的一个软件包中有这个,它运行正常。
通常,尽可能避免使用脚本和自定义操作,因为这些操作可能需要您在目标计算机上无法获得的某些权限。