Я разработал надстройку C # для Office 2007. Для развертывания используется clickonce. В системах с Office 2010 все в порядке, но на машине с XP SP3, NET 3.5sp1 и Office 2007 я получаю странную ошибку загрузки сборки.
Моя надстройка не ссылается напрямую на Microsoft.Office.Interop.SmartTag.dll
. На это ссылается Microsoft.Office.Tools.Commmon.v9.0.dll
, на который есть ссылка в моей надстройке.
Когда надстройка устанавливается с помощью щелчка, появляется сообщение об ошибке, что Microsoft.Office.Interop.SmartTag.dll
не может быть найден в локальной установочной папке моей надстройки. И Microsoft.Office.Tools.Commmon.v9.0.dll
, и Microsoft.Office.Interop.SmartTag.dll
находятся в GAC с правильными версиями.
Я использовал Reflector
, чтобы попытаться обнаружить проблему, но он легко разрешает Microsoft.Office.Interop.SmartTag.dll
ссылку, найдя DLL в GAC.
Каковы возможные причины сбоя моей установки clickonce? Необходимые сборки присутствуют, но с GAC, очевидно, не консультируются.
Я обнаружил, что добавление |vstolocal
в значение реестра Manifest заставляет все работать должным образом, но все же мне интересно, почему я вообще получаю ошибку.