2015-10-21 4 views
2

Я пытаюсь установить IIS с Inno Setup, но у меня возникают различные ошибки.Установите IIS с установкой Inno

Я попробовал команду 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 Была сделана попытка загрузить программу с неправильным форматом

Спасибо за помощь.

+0

В каком разделе вы используете это? Можете ли вы дать нам минимальный, но полный образец, чтобы воспроизвести проблему? –

ответ

2

Ваш первый синтаксис просто использует неправильный формат аргументов (явно отличающийся от того, что работает для вас в командной строке).


Проблема со вторым синтаксисом, вероятно, заключается в том, что вы запускаете установщик в 64-разрядной Windows. Установщик Inno Setup - это 32-битное приложение, поэтому по умолчанию будет найден 32-разрядный вариант pkgmgr (C:\Windows\SysWOW64\PkgMgr.exe), который не может установить 64-разрядный IIS.

Подробнее о File System Redirector.

Добавить Flags: 64bit, чтобы Inno Setup находил 64-битную версию pkgmgr (C:\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-битных и выберите исправьте один, используя Check: not IsWin64 и Check: IsWin64 соответственно.

[Run] 
Filename: pkgmgr; \ 
    Parameters: "..."; \ 
    Check: not IsWin64 
Filename: pkgmgr; \ 
    Parameters: "..."; \ 
    Flags: 64bit; Check: IsWin64 

Или используйте 64-bit install mode.

Это сделает Inno Setup автоматически найдена правильная версия pkgmgr.

Смежные вопросы