Различные ссылки Interop на двух различных компьютерах не работают

В будущем проблема была вызвана изменением локального файла. Вы можете использовать git stash для временного сохранения изменений и использовать git pull для получения удаленной версии, а затем использовать git stash pop для возврата локального файла. к изменениям, которые у вас были.

с точки зрения того, что файл находится в git ignore, вам нужно будет запустить git rm --cached, чтобы изменения были проигнорированы, если вы добавили в .gitignore после внесения изменений

11
задан JimmyPena 21 June 2012 в 19:31
поделиться

3 ответа

Я использовал автоматизацию Excel путем больше, чем я хотел бы признать, и я никогда не ссылался на Interop.Excel.dll. Я всегда ссылался на первого. Почему он ссылается на это, и какие ошибки он получает?

Вы - парни, ссылающиеся на ту же версию Excel (5,0 стихов 11.0)? Вы у парней есть та же самая версия офиса, сервис pakcs и все? Это могло быть различием.

0
ответ дан 3 December 2019 в 09:42
поделиться

Я нашел самый чистый способ использовать его, это также допускает несколько версий interop, должен создать общий bin\Office Interop\11 или 12\Microsoft.Office.Interop.Excel.dll\и refeferenced их из проекта, работы обработка для другой версии

-1
ответ дан 3 December 2019 в 09:42
поделиться

Я не вижу проблемы с Вашим подходом также.

Обычно VS генерирует interop блок для COM-компонентов автоматически, когда Вы добавите ссылку на компонент. Однако, когда Вы добавляете ссылку на один из компонентов Office (XP или любая более поздняя версия), ссылку на предварительно сгенерированный (и оптимизированный), основной interop блок от Microsoft добавляется как в Вашем первом примере. Строка

<WrapperTool>primary</WrapperTool>

средства, что этот PIA используется.

Если бы Вы правильно добавили ссылку PIA, то свойство CopyLocal этой ссылки должно иметь значение false, и свойство Path должно быть чем-то как

C:\WINDOWS\assembly\GAC\Microsoft.Office.Interop.Excel\12.0.0.0__71e9bce111e9429c\Microsoft.Office.Interop.Excel.dll

Вы найдете еще некоторые детали о interop блоках в этой статье MSDN.

Получить первый метод, работающий его, необходимо, чтобы Office Primary Interop Assemblies (PIAs) был установлен на машине. Существует распространяемая версия, доступная от Microsoft:

AFAIK, эти PIAs только установлены установкой Office, когда Платформа.NET была уже установлена, вот почему существует отдельный распространяемый файл для PIAs.

Примечание: Удостоверьтесь, что Вы ссылаетесь на версию Office, для которого Вы нацелены. При предназначении для нескольких версий Office Вы могли бы получить некоторые проблемы как бы то ни было. Решением в этом случае могло бы быть позднее связывание (если производительность не является проблемой).

12
ответ дан 3 December 2019 в 09:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: