Надстройка Excel не отображается на некоторых машинах

У меня возникли трудности с установкой надстройки Excel на моем клиенте. Я создал установщик для надстройки, используя инструкции на http://www.clear-lines.com/blog/post/create-excel-2007-vsto-add-in-msi-installation.aspx, и это было успешно для большинства пользователей. Установщик запускался от имени администратора, и, похоже, все работало нормально. Однако для небольшой части пользователей установка была неудачной - записи в реестре создаются, но надстройка не загружается при запуске Excel и не отображается в списке надстроек. Попытка добавить его вручную из установочной папки выдает ошибку, что надстройка недействительна.

Чтобы немного усложнить ситуацию, клиент использует как Vista, так и XP (хотя все установки Excel - 2007). Ни одна из машин XP не установила надстройку успешно, тогда как большинство (но не все) машины Vista были успешными.

Кто-нибудь имел в этом опыт или мог бы указать, в чем я ошибаюсь?

Спасибо заранее,

Роб


person Rob    schedule 06.06.2011    source источник


Ответы (1)


Были изменены различные пути профилей пользователей между XP и VISTA. Если вы установили какие-либо пути, такие как \ Users \ username \ Application Data и т. Д., Возможно, вы не совсем правильно устанавливаете что-то в XP, где обычно путь будет \ Documents and settings \ username \ Application Data.

Наконец, если надстройка не загружается, единственные причины: 1) записи реестра, указывающие на нее (или на МАНИФЕСТ в случае VSTO), либо отсутствуют, либо неверны. 2) надстройка имеет какое-то предварительное условие или зависимость, которую вы пропустили, и поскольку ее там нет, загрузчик надстройки просто не может загрузить надстройку.

Для 1) просто проверьте записи reg на предмет всех правильных значений, затем добавьте msgbox или какой-нибудь журнал в своем надстройке, чтобы убедиться, что он действительно, по крайней мере, изначально загружается Excel.

Для 2) я прочитал о Fusion Loaded Viewer и использовал его. Fusion - это служба "загрузчика" .net, и ее можно настроить для регистрации всевозможной подробной информации о том, где он ищет предварительные запросы, какие из них, где находятся, а какие нет.

Подробности здесь

http://www.hanselman.com/blog/BackToBasicsUsingFusionLogViewerToDebugObscureLoaderErrors.aspx

person DarinH    schedule 06.06.2011
comment
Что касается вашего первого пункта, приложение устанавливается в C: / Program Files / ‹Manufacturer› / ‹Имя дополнения› /, поэтому я сомневаюсь, что здесь есть проблема. Я посмотрю, произошли ли какие-либо изменения в реестре, спасибо, что указали на это. Я почти уверен, что приложение даже не пытается загрузиться, нет ошибок, связанных с загрузкой, нет признаков надстройки в списке надстроек Excel (включен или отключен), это буквально как будто Excel понятия не имеет, что он должен даже пытаюсь загрузить его, что заставило меня взглянуть на реестр. Спасибо за ваш ответ! - person Rob; 07.06.2011
comment
и в чем причина того, что в конце концов его там не было? - person sean.net; 18.12.2012