.NET app.config вопрос

Я создал надстройку для Excel 2003, которая использует CLR 2.0, и эта надстройка должна быть установлена ​​на сотнях компьютеров на сайте моего клиента. Проблема заключается в том, что на некоторых машинах, на которых установлена ​​надстройка, запущены бок о бок.NET 1.1 и.NET 2.0, а плагин выдает ошибку при попытке загрузки.

Решение, с которым я столкнулся, заключается в том, чтобы создать файл excel.exe.config в той же папке, где находится файл excel.exe, в котором для версии supportRuntime установлено значение v2.0.50727.

Поскольку в моем случае это решение плохо масштабируется (поскольку надстройка должна использоваться на сотнях машин, где пользователи могут даже не иметь доступа для создания файла конфигурации), мне было интересно, смогу ли я добавить тот же параметр supportRuntime в моем плагине файл app.config, и это будет работать.

Если это не сработает, вы, ребята, знаете что-нибудь еще, что я мог бы попробовать?

2 ответа

Решение

Какое сообщение об ошибке вы получаете?

Проблема, которую вы описываете, не должна возникать в Office 2007. Однако это известная проблема для так называемых общих надстроек (надстроек.NET на основе интерфейса Extensibility.IDTExtensibility2 с использованием взаимодействия COM) в Office 2003.

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

http://support.microsoft.com/kb/908002

Решение с использованием файла конфигурации является нестандартным решением, но оно также должно устранить проблему, как указано в следующей статье:

http://nielsvanvliet.com/excel.html

Если вы хотите развернуть надстройку с помощью установщика MSI, вам следует проверить обновление поддержки общих надстроек для Microsoft .NET Framework 2.0 (KB908002) в качестве предварительного условия в свойствах проекта установки. Обратите внимание, что это исправление можно установить только для текущего пользователя, т. Е. Установка ALLUSERS должна быть отключена.

ОБНОВЛЕНИЕ: установка с VS 2008 немного сложнее. Посмотреть здесь:

Можно ли установить надстройку.NET Word 2003 вне GAC?

Что ж, если есть сотни машин, я предполагаю, что существует групповая политика или какой-то другой метод запуска сценариев администратора или установочных файлов. Может быть, вы можете создать небольшой пакет MSI, чтобы вытолкнуть этот файл конфигурации или добавить его в сценарий запуска?

Другие вопросы по тегам