2016-08-25 7 views
0

У меня есть приложение WPF, которое использует внешнюю библиотеку PDFNet. Весь проект использует Wix для создания MSI для сборки x86 или x64 (Not AnyCpu). Эти MSI позже объединяются с некоторыми внешними ресурсами для создания одного установщика exe с помощью InnoSetup.Visual studio 2015 - справочная библиотека 32/64 бит несоответствия. (PDFNet)

Проблема в том, что мне нужно включить правильную версию PDFNet в правильную сборку, а визуальная студия всегда использует 32-битные.

Может ли кто-нибудь указать мне в правильном направлении, как правильно настроить его?

спасибо.

+0

VS does * not * mind, что вы создаете 64-битную программу. Но сначала вам нужно начать с правильного вкуса PDFNet и настроить свой проект, чтобы ваша программа действительно выполнялась в 64-битном режиме. Project> Properties> Build, установите целевую платформу в AnyCPU и отключите опцию «Предпочитайте 32-разрядную». Посмотрите еще немного, это должно быть доступно для поиска. –

+0

Здравствуйте, К сожалению, опция AnyCPU невозможна из-за установки (не сделанная мной, к сожалению, я начинаю установку и время от времени, я предпочитаю перезаписывать ее). Только Release-x86 или Release x64-x64. Я попытался оглянуться на некоторое время. Меня озадачило то, как именно конкретные версии PDFNet распространяются для сборки. Если я установил оба из них (loader и pdf net), скопируйте local = true, тогда я получаю неправильную версию. Если я их не копирую, я получаю ошибку, которую они не могут найти. – Pepsin

+0

Конечно, это возможно. Для вашего 32-разрядного установщика вы можете установить его на x86. Для вашего 64-битного установщика вы * должны * установить его в AnyCPU, чтобы он мог работать в 64-битном режиме. Добавьте конфигурацию в свой проект, чтобы вы могли создавать оба вкуса. Вы должны получить правильный вкус PDFNet, скопированный, лучше всего сделать это в событии после сборки. Попросите кого-нибудь в вашей команде помочь вам, а не совсем новичок. Или просто не беспокойтесь, если у него * есть * для работы в 32-битном режиме, чем нет смысла в таргетинге на x64. –

ответ

0

Кажется, что сработало. Итак: вся проблема была в неправильной комбинации «копировать локальные» видения PDFNet и PDFNetLoader. Правильная настройка PDFNet ложна во всех проектах и ​​Loader true везде. Если я правильно понял при загрузке PDFNet, загрузчик вмешивается и загружает правильную версию assemlby из папки в \ bin \ PDFNet \ PDFNet \ x86 (или x64 соответственно).

PS: Посмотрите все обсуждение из ответа выше, было очень полезно

Смежные вопросы