Я пытаюсь установить проект веб-установки, созданный в Visual Studio 2008, в архитектуре x86-64bit, и когда я пытаюсь установить его на сервере Windows 2003, x64 говорит, что не может быть установлен, и установка завершается.
Я проверил журнал событий в разделе Администрирование и обнаружил общее сообщение об ошибке.позже, используя подробное ведение журнала в msiexec.exe, я нашел это:
(UNKNOWN) La acción se inició a las 08:32:22: WEBCA_EvaluateURLsNoFail.
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: Custom Action is starting...
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: CoInitializeEx - COM initialization Apartment Threaded...
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: Enumerating table using SQL statement: 'SELECT * FROM `_UrlToDir`'
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: Calling MsiGetActiveDatabase...
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: MsiDatabaseOpenViewW - Prepare Database to view table...
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: TMsiViewExecute - Open Database view on table...
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: MsiRecordGetStringW - Fetching value...
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: MsiRecordGetStringW - Getting value from column '1'...
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: Getting App Root for Url Property: TARGETURL
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: Getting AppRoot From Url key 'TARGETURL'.
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: MsiGetPropertyW - Determine size of property 'TARGETSITE'
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: Property 'TARGETSITE' retrieved with value ''.
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: RESULT:
(UNKNOWN) ERROR : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: FAILED: -2147024809
(UNKNOWN) ERROR : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: FAILED: -2147024809
(UNKNOWN) ERROR : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: FAILED: -2147024809
(UNKNOWN) ERROR : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: FAILED: -2147024809
(UNKNOWN) ERROR : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: FAILED: -2147024809
(UNKNOWN) ERROR : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: FAILED: -2147024809
(UNKNOWN) ERROR : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: FAILED: -2147024809
(UNKNOWN) ERROR : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: Custom Action failed with code: '87'
(UNKNOWN) INFO : [12/02/2011 08:32:22:609] [EvaluateURLsNoFail ]: Custom Action completed with return code: '87'
(UNKNOWN) DEBUG: Error 2769: Custom Action WEBCA_EvaluateURLsNoFail did not close 1 MSIHANDLEs.
есть идеи, как обойти это?
Обновление (источник конкретной проблемы)
Запрос SELECT * FROM '_UrlToDir'
извлекает значения по умолчанию для конфигурации метабазы IIS LM/W3SVC/1/ROOT/3001
.проблема заключается в том, что MSI Websetup Projects ВСЕГДА ПРЕДСТАВЛЯЕТ, что веб-сайт по умолчанию имеет 1
в качестве идентификатора в вашей метабазе, если по какой-либо причине этот конфиг не существует или он поврежден, то возникает ошибка.
В моем конкретномВ этом случае мои проблемы возникли из-за того, что я установил Crystal Reports 2008 Runtime, а затем установил сервер WSUS на своем рабочем веб-сервере.
Вычитая, что произошло (потому что у меня нет дополнительной информации), WSUS переместил мой текущий запущенный экземпляр конфигурации веб-сервера в другой идентификатор (не знаю, зачем это нужно), и явно не обнаружилКонфигурация, которую установщик Crystal Reports вставил в метабазу, в результате частичной миграции конфигурации моего прежнего веб-сайта в другой идентификатор, WSUS вставил свой собственный идентификатор (BTW Not id 1
) и сохранил идентификатор 1
с поврежденнымсведения о конфигурации.
Возможное решение
Использование обозревателя метабазы, включенного в комплект ресурсов IIS 6, для поиска неверного идентификатора и попытки его удаления, затем с помощью сценариев администратора IIS попытайтесь переместить текущую конфигурациювернуться к идентификатору 1
, используя следующую команду:
CSCRIPT %SYSTEMDRIVE%\Inetpub\AdminScripts\adsutil.vbs STOP_SERVER W3SVC/[OLD_ID]
CSCRIPT %SYSTEMDRIVE%\Inetpub\AdminScripts\adsutil.vbs MOVE W3SVC/[OLD_ID] W3SVC/[NEW_ID]
CSCRIPT %SYSTEMDRIVE%\Inetpub\AdminScripts\adsutil.vbs START_SERVER W3SVC/[NEW_ID]
Я действительно боюсь, что что-то пойдет не так, я попробую это в какой-то момент в будущем, но не сейчас.