Приложение ClickOnce не работает с Office 2007


0

Я разработчик приложения .net, использующего ClickOnce для развертывания. Я развернул его более 60 раз, и на компьютерах не было проблем с загрузкой последней версии. Однако, когда я установил сегодня утром, следующая ошибка возникает, когда компьютеры с установленным Office 2007 пытаются запустить приложение:

Не удается установить или запустить приложение. Приложение требует, чтобы сборка stdole Version 7.0.3300.0 была впервые установлена ​​в глобальном кэше сборок (GAC). Пожалуйста, обратитесь к системному администратору.

Однако компьютеры с Office 2003 могут запускать приложение без проблем.

Есть ли у кого-нибудь рекомендации по разрешению этой проблемы?

0

Я не уверен, что о вашей проблеме, но версия Office 12 из stdole библиотеки отличается (и -в моего опыта-не всегда обратно совместимы), чем тогда один у вас есть, когда вы используете Office 2003.

мы используем обертку вокруг офиса библиотеки DLL использовать MailMerge особенность офиса может предложить и, верить этому или нет, Microsoft изменила интерфейсы снова, поэтому мы должны собрать два различные обертки, связанные с два разными офисные версии. Короче говоря, PITA.

Я еще не кодирую офис MS, пока они не предоставляют управляемую библиотеку.

Несмотря на разглагольствование, я думаю, что вы должны установить Office 12 на свой компьютер и проверить оттуда. Вы заметите, что все вещи Office разные. Если вы можете заставить его работать под Office 12, то может быть совместимым с машинами с Office 11 (также известный как 2003), но не рассчитывайте на него и проверяйте его перед развертыванием чего-либо.

Я не думаю, что это имеет какое-либо отношение к ClickOnce; это больше проблема GAC/OfficeVersion. Кроме того, проверьте возможные проблемы с Vista, так как UAC и материал DEP, как правило, мешают использованию «старых» приложений.


2

Насколько я знаю, эта версия stdole удаляется при установке Office2k7. Вы можете установить его отдельно через gacutil на всех целевых машинах. или каким-то образом включают его через загрузчик пакетов ClickOnce. На mac прямо сейчас, поэтому я не могу проверить.

  0

На самом деле это не «удалено» афайк.У меня есть это на моих машинах Office12, но это не то же самое, что у машин Office11. 24 сен. 082008-09-24 08:46:10


0

У меня была такая же проблема, как только наша компания начала развертывать Office 2007. Моим первым быстрым решением было просто скопировать stdole на GAC двух компьютеров, дающих эту проблему.

После расследования я обнаружил, что наше приложение фактически не использовало stdole. Возможно, он добавил ссылку, когда я протестировал COM-библиотеку, которую я удалил после тестирования. Поэтому мое решение состояло в том, чтобы исключить его из диалогового окна «Файлы приложений» на вкладке «Опубликовать». Поэтому сначала убедитесь, что вам это нужно.

Насколько я понимаю, это необходимо, когда вы ссылаетесь на некоторые COM-библиотеки DLL, такие как Office. Если это так, я нашел несколько сообщений о том, что проблема была решена путем изменения диалогового окна «Публикация состояния в файлах приложений» из «Предварительное условие для включения» и «Загрузить группу» с «Нет» на «Обязательно». В моем случае stdole был добавлен по умолчанию как Предварительное условие.