Подтвердить что ты не робот

Не удалось создать приложение С++/CLI с использованием VS 2010,.Net 3.5 и 64-разрядных

У меня есть приложение С++/CLI, которое создано в Visual Studio 2010, но с использованием .Net 3.5. По мере необходимости я редактировал файл проекта, чтобы добавить TargetFrameworkVersion со значением 3.5 и смог создать его без проблем, когда был в режиме x86 (32-разрядный). Однако, когда я переключился на его создание в режиме x64 (64-разрядный), я получил следующую ошибку:

Ошибка MSB8014: Не удалось найти путь выполнения (C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\x86_amd64).

У меня установлен VS 2008 (9.0), но в папке bin нет каталога x86_amd64. Я попытался обмануть его, добавив эту папку (и папку amd64, которая не удалась бы из-за следующей строки в файле целей), а затем я получил ошибку:

фатальная ошибка LNK1112: тип модуля модуля "X86" конфликтует с типом целевой машины "x64"

который я не могу понять, потому что у моего проекта нет явных ссылок. Я переключил сборки С#, с которыми он взаимодействует, для сборки в x64 (в отличие от любого процессора), но безрезультатно.

FYI: все строит правильно в 32-битном режиме. Все также правильно построено в режиме 64 бит, если я переключусь на .Net 4.0 (v100). Я получаю те же ошибки, что и в режиме выпуска и отладки.

Любые идеи будут оценены.

4b9b3361

Ответ 1

Если вы компилируете "набор инструментов", измененный с V100 на V90 на свойства проекта, и у вас есть Visual Studio 2008, установленный на одной машине разработки, просто зайдите в "Панель управления", "Программы и компоненты", выберите Visual Studio 2008, щелкните правой кнопкой мыши, выберите "Удалить/изменить", затем выберите "добавить/удалить fatures", а затем, когда вам будет представлен список функций, найдите x64 компилятор/файлы в Visual С++, который не установлен по умолчанию, но нажав рядом с ним он добавит необходимые файлы.

Ответ 2

В VS2010 он должен ссылаться на C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\x86_amd64

Вероятно, вы неправильно настроили конфигурацию или импортировали из проекта vs2008.

Перейдите к Configuration -> General -> Platform Toolset. убедитесь, что он v100 (vs2010)

Если это не поможет, посмотрите Configuration -> VC++ Directories. Это где этот путь установлен.
Вы можете видеть, что он выглядит в $(VCInstallDir), который на вашем компьютере установлен на путь VS2008.