Как собрать 64-битную управляемую C ++ DLL в Visual Studio 2010? - PullRequest
0 голосов
/ 29 января 2012

У меня есть управляемый c ++ dll, и он прекрасно работает в формате x86.Однако, когда я изменяю формат на x64 в диспетчере конфигурации, он не распознает пространства имен .Net, такие как System и т. Д.

Что еще мне нужно изменить, чтобы иметь возможность создавать 64-битную версию приложения?

Мне нужно будет собрать приложение для x64 и x86.

Ответы [ 2 ]

2 голосов
/ 29 января 2012

Когда вы изменили свой проект на целевой x64, параметры, указывающие компилятору нацеливаться на .NET Framework, явно не передавались.

Проверьте свойства вашего проекта, чтобы убедиться, что все настройки x64 совпадают с настройками x86.

Более конкретно, вы ищете свойство «Common Language Runtime Support». В последних версиях Visual Studio этот параметр, вероятно, должен быть установлен на Common Language Runtime Support, Old Syntax (/clr:oldSyntax) для Managed C ++.

1 голос
/ 29 января 2012

Вы бы создали конфигурацию «x64», там есть второй выпадающий список для «копирования настроек из». Это также должно быть правильно установлено для копирования настроек из других ваших конфигураций.

Но так как вы уже сделали это, возможно, все ваши ссылки на сборки не были скопированы в вашу конфигурацию 'x64'. Вы проверили настройки своего проекта x64, чтобы увидеть, есть ли они там? Откройте настройки вашего проекта и выберите: Общие свойства -> Каркас и ссылки Затем убедитесь, что у вас есть ссылка на систему (как минимум)

...