Создание XLL, который работает под 32 и 64-битным Excel

Мы используем XLDNA для создания небольшого VB.net XLL, который загружает наши файлы данных и помещает содержимое в Excel для редактирования. Когда мы попытались внедрить это в нашу команду из трех человек, это было похоже на эпизод "Трех марионеток" - он отлично работал бы на одной машине, но потом говорил нам, что это не был действительный XLL на другой, что вызывало сильные головокружения.

Мы поняли, что это было связано с 32/64, но также обнаружили, что на рассматриваемых машинах случайно была установлена ​​версия Excel с 32 или 64, хотя они все одной и той же модели, работали в одной ОС и устанавливали XL с одного DVD! Если мы не сможем понять это, я подозреваю, что нашим пользователям будет еще сложнее.

Итак... есть ли способ сделать один XLL, содержащий 32- и 64-битный код?

1 ответ

Решение

Нет, вы не можете сделать один XLL для 32 и 64 бит. См. Источник для проекта на основе Excel-DNA, такого как PMStockQuote. Вы увидите, что он генерирует два различных двоичных файла.xll, один для x86 и один для x64. Я полагаю, вам нужно исправить процедуру установки, чтобы понять, находится ли EXCEL.EXE в каталоге c:\Program Files или c:\Program Files (x86).

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