使用Inno Setup安装IIS

时间:2015-10-21 20:44:29

标签: windows iis inno-setup

我正在尝试使用Inno Setup安装IIS,但我遇到了各种错误。

我尝试在DOS上运行命令并运行:

  

start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-ManagementService;IIS-CGI;IIS-RequestFiltering;IIS-ASPNET;IIS-HttpLogging;IIS-NetFxExtensibility;IIS-HttpErrors;IIS-DefaultDocument;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-StaticContent;IIS-ManagementConsole;IIS-DirectoryBrowsing;IIS-WindowsAuthentication;IIS-WebServer;

我试过在Inno Setup中使用它:

  

Filename: pkgmgr; Parameters: "/iu:IIS-WebServerRole; IIS-WebServer: ; IIS-CommonHttpFeatures: ; IIS-ManagementService: ; IIS-CGI: ; IIS-RequestFiltering: ; IIS-ASPNET: ; IIS-HttpLogging: ; IIS-NetFxExtensibility: ; IIS-HttpErrors: ; IIS-DefaultDocument: ; IIS-ISAPIExtensions: ; IIS-ISAPIFilter: ; IIS-StaticContent: ; IIS-ManagementConsole: ; IIS-DirectoryBrowsing: ; IIS-WindowsAuthentication: ; IIS-WebServer: ; "

但它显示错误

  

操作失败,0x80070057参数不正确

我试过后:

  

Filename: pkgmgr; Parameters: "/iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-ManagementService;IIS-CGI;IIS-RequestFiltering;IIS-ASPNET;IIS-HttpLogging;IIS-NetFxExtensibility;IIS-HttpErrors;IIS-DefaultDocument;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-StaticContent;IIS-ManagementConsole;IIS-DirectoryBrowsing;IIS-WindowsAuthentication;IIS-WebServer;";

但显示错误

  

操作失败,出现0x8007000B尝试加载格式不正确的程序

感谢帮助。

1 个答案:

答案 0 :(得分:2)

你的第一个语法只是使用了错误的参数格式(明显不同于在命令行上适合你的那个)。

第二种语法的问题可能是您在64位Windows上运行安装程序。 Inno安装程序安装程序是32位应用程序,因此默认情况下会找到32位版本的pkgmgrC:\Windows\SysWOW64\PkgMgr.exe),它无法安装64位IIS。

有关File System Redirector

的详细信息,请参阅

添加Flags: 64bit以使Inno Setup找到64位版本的pkgmgrC:\Windows\System32\PkgMgr.exe)。

[Run]
Filename: pkgmgr; \
    Parameters: "/iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-ManagementService;IIS-CGI;IIS-RequestFiltering;IIS-ASPNET;IIS-HttpLogging;IIS-NetFxExtensibility;IIS-HttpErrors;IIS-DefaultDocument;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-StaticContent;IIS-ManagementConsole;IIS-DirectoryBrowsing;IIS-WindowsAuthentication;IIS-WebServer"; \
    Flags: 64bit

要在32位和64位版本的Windows上启用安装,您需要在[Run]部分中有两个条目,一个用于32位,一个用于64位,并选择正确的一个<{1}}和Check: not IsWin64

Check: IsWin64

或使用64-bit install mode

这将使Inno Setup自动找到[Run] Filename: pkgmgr; \ Parameters: "..."; \ Check: not IsWin64 Filename: pkgmgr; \ Parameters: "..."; \ Flags: 64bit; Check: IsWin64 的正确版本。