Скомпилировать 32-битный проект VS 2003 в 64-битный

В настоящее время у меня есть 32-разрядная dll, созданная с помощью Visual Studio 2003 на C++ с использованием Управляемые расширения< /а>. Сейчас я пытаюсь скомпилировать 64-битную версию без необходимости перехода на C++/CLI. Я следил за руководством в этом месте. Я получаю следующую ошибку:

фатальная ошибка C1197: не может ссылаться на «c:\windows\microsoft.net\framework\v1.1.4322\mscorlib.dll», поскольку программа уже ссылалась на «c:\windows\microsoft.net\framework\v2.0.50727\mscorlib. dll'

Я не могу понять, что ссылается на версию dll для .NET 2.0.


person Richard Nienaber    schedule 05.11.2008    source источник
comment
64 бита с VS2003? В VS2003 не было 64-битного кросс-компилятора?!?   -  person KTC    schedule 05.11.2008
comment
Верно. Судя по всему, вы можете скачать Platform SDK (который содержит 64-битный компилятор) и скомпилировать его в VS2003 (при условии, что вы запустите его с правильными переменными среды).   -  person Richard Nienaber    schedule 05.11.2008


Ответы (2)


Вы вручную вызываете файл .dll в коде? Как в этом?

#using "C:\Windows\Microsoft.NET\Framework\v1.1.4322\mscorlib.dll

Если это так, вы можете изменить эту строку просто на:

#using "mscorlib.dll"
person UberJumper    schedule 05.11.2008
comment
Это происходит независимо от того, указываю ли я полный путь, '#using mscorlib.dll', '#using ‹mscorlib.dll›' или полностью опускаю. - person Richard Nienaber; 05.11.2008

Включаете ли вы библиотеку, которая ссылается на другую версию mscorlib?

Вы указываете параметр /clr и выполняете #using «mscorlib.dll»?

person Brian R. Bondy    schedule 11.03.2009