Решению VSTO, использующему ClickOnce через IIS 6, не удается загрузить манифест

#visual-studio #iis #vsto #clickonce #ms-office

#visual-studio #iis #vsto #clickonce #ms-office

Вопрос:

У меня есть решение Office для Word 2007, которое я публикую с помощью ClickOnce. Когда я публикую его в локальном каталоге, я могу установить файл .vsto, и все работает. Однако, когда я публикую его на нашем веб-сервере, я не могу его установить. Ошибка, которую я получаю, это:

Загрузка файла:/// C:/DOCUME ~ 1 /Dave /LOCALS ~ 1 / Temp /Application Files/MyApp_1_0_0_0/MyApp.dll.manifest не удалась.

Большую часть дня я искал в Google и уже попробовал следующее:

  • Добавлены правильные типы MIME в конфигурацию IIS 6 (как описано здесь и здесь в MSDN).
  • Создал тестовый сертификат, импортировал его в мои доверенные корневые службы и подписал с ним приложение.
  • Опубликовал решение в сетевом ресурсе и попытался установить оттуда. Это сработало нормально.
  • Пытался получить доступ к файлу MyApp.dll.manifest непосредственно с веб-URL. Браузер может найти файл просто отлично.

Чего мне не хватает? Спасибо.

Ответ №1:

Убедитесь, что установщик Windows 3.1 установлен на ПК конечных пользователей. Если это не так, вы можете добавить его в качестве предварительного условия в свое приложение.

Кроме того, вы можете захотеть проверить, установлено ли приложение с экрана установки и удаления программ Windows. Если он есть в списке, возможно, сначала потребуется удалить приложение. Я знаю, вы, вероятно, думаете: «Но приложение еще не установлено».

Довольно много приложений, опубликованных через ClickOnce. ClickOnce большую часть времени работает отлично, но время от времени я вижу пользователей, которые сталкиваются с икотой, подобной вашей, при попытке первоначальной установки приложения. Обычно лучшим решением является удаление всех необходимых компонентов, перезагрузка, повторная установка необходимых компонентов вручную (не из ClickOnce setup.exe файл), а затем запустить приложение.

Некоторые из этих шагов могут быть необязательными, но это, как правило, устраняет проблему почти каждый раз.