CustomAction <action_name> вернул фактический код ошибки 1603 в installshield - PullRequest
5 голосов
/ 03 августа 2011

Я использую Basic MSI для установки моего приложения.

Я получаю Error 1001 во время установки и происходит откат.Я заметил в журнале установки, что я получаю эту ошибку:

"CustomAction вернул фактический код ошибки 1603. Действие завершено InstallFinalize. Возвращаемое значение 3.

Пользовательское действиеdll - это класс установщика .NET, для свойства установлено значение True.

Кто-нибудь знает, в чем может быть проблема?

Ответы [ 4 ]

1 голос
/ 22 сентября 2011

Код ошибки 1603 - это общий код ошибки установщика Windows, когда пользовательское действие вызывает любую ошибку / исключение.Установщик Windows не показывает фактическую ошибку / исключение в журналах установщика.Чтобы проверить фактическую ошибку / исключение, мы должны отладить пользовательское действие.

Убедитесь, что пользовательское действие вызывает любую ошибку / исключение.

1 голос
/ 02 января 2013

Проверенное решение:

Ошибка 1001 из-за несоответствия .Net Framework. InstallShield использует RegAsm.exe и InstallUtilLib.dll для компиляции установщика, и они должны соответствовать целевой структуре вашего приложения, и целевой компьютер также должен иметь ее:

Ошибка 1001 причина и решение, обсуждаемое здесь

enter image description here

Откройте Installshield IDE -> Перейти в меню Сервис -> Параметры и проверьте следующие параметры, как показано на скриншоте выше:

1 голос
/ 02 августа 2011

Ваш проект установки включает компонент с .NET Installer Class , установленным на Да .Использование этой опции является анти-паттерном, так как он может привести к модальному интерфейсу даже в автоматических установках, и часто говорит только «Ошибка 1001».Вы можете либо искать компонент с этим параметром, либо вести подробный журнал и искать информацию незадолго до первого или единственного возвращаемого значения 3 .

0 голосов
/ 20 января 2014

В моем случае я устанавливал службу Windows x86 на машину x64. Мне пришлось изменить оба пути в моих параметрах на мою локальную папку установки x86 .net для целевой платформы моего исполняемого файла. то есть.

32-битное расположение C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319

64-битное расположение C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319

...