我有一個32位ATL C++進程內COM服務器靈魂。我如何將它移植到64位Windows?我的意思是如何讓VC++ 7發出64位代碼? Visual Studio 2003有可能嗎?如何在Visual Studio 2003中創建64位本機ATL C++ DLL?
回答
你需要一個64位編譯器長,將長編譯到64位。在VS2005中發佈的版本可以。更高版本的Visual C++和Windows SDK具有更高版本的編譯器。標準或更低版本的Visual C++禁用64位支持,但不支持免費提供的Windows SDK。像英特爾這樣的其他編譯器提供商也有自己的支持Visual Studio和64位的產品。
這是否意味着我可以使用Windows SDK中的編譯器進行編譯? – sharptooth 2009-11-03 06:38:18
是的,WDK中的編譯器也會這樣做。注意在新版本的編譯器中可能會棄用一些開關,因此您可能需要調整編譯器配置 – 2009-11-03 13:07:46
我考慮過所有選項,並決定只編譯安裝了VS2k8的構建服務器上的項目,並從那裏複製結果。這將會減少痛苦,我們計劃在幾個月內將所有項目遷移到那裏。 – sharptooth 2009-11-06 09:48:39
64位的支持是new with VS 2005,又名VC++ 8
那不是你知道的答案嗎? – 2012-10-02 22:15:56
@BartoszWójcik:接受的答案與我一致。你不能在VS2003中創建它,並且需要使用VS2005或更高版本。請注意,問題是3歲,VS2005現在也過時了。 – MSalters 2012-10-04 08:58:11
看一看VSItanium。從描述:
的VSItanium插件用於Visual Studio .NET 2003允許編譯的Win32 Visual C++項目與一些外部的編譯器,實際上微軟SDK 64位Itanium和AMD Opteron處理器的編譯器以及英特爾C++安騰編譯器。
關於編譯器的選擇 - 如果遷移到VS版本新的不是一個選項,因爲在CL 13的依賴(VS 2005使用CL 14),你應該能夠找到支持CL 13 IA-64和amd64在WDK 3790.1830,IIRC。應該有一個支持64位的舊版SDK,但我不知道哪一個。
如果您的項目使用較新的編譯器進行編譯,您基本上可以自由選擇WDK和SDK版本。
- 1. 如何使用C#代碼在Visual Studio中創建本機DLL?
- 2. Howto在Visual Studio 2005中創建ATL/C++ ActiveX DLL
- 3. 從32位C DLL創建64位DLL
- 4. 在Visual Studio中創建一個64位版本
- 5. 如何在visual studio 2010中構建64位受管理的C++ dll?
- 6. 如何在Visual C++中創建ActiveX DLL
- 7. 如何在Visual Studio Community 2015中創建「ATL項目」?
- 8. QuickFix的64位構建上的Visual Studio .NET(.NET C++ DLL包裝)
- 9. 如何使用Visual Studio 2010編譯64位的C DLL?
- 10. 創建在Visual Studio C++ DLL將在VB
- 11. 如何從運行Windows Server 2003 64位版本的C#調用32位C DLL?
- 12. 在Windows 7上構建Visual Studio 2008 Express C++ 32位64位
- 13. C++ COM ATL DLL
- 14. 大廈64位C#在Visual Studio 2010
- 15. 如何使用Visual Studio在C中創建DLL?
- 16. 如何在Visual Studio C#2010中創建DLL文件表達版?
- 17. 在Visual Studio 2013中找不到C++ ATL庫(atl.lib和atl120.dll)
- 18. 如何從Visual Studio 2003 C++ .NET中排除特定的.dll?
- 19. 在64位機器上調用64位Dephi DLL從C#在64位機器上
- 20. 不知怎的用Borland C++ Builder創建一個64位DLL
- 21. 在Visual Studio中,如何同時構建C++項目的32位和64位版本?
- 22. Visual Studio 2008 for Windows 7 64位(用於創建64位二進制文件)
- 23. 用Visual Studio創建.dll
- 24. 如何在64位調試Visual Studio
- 25. 如何設置Visual Studio 2010項目來爲Slickedit 17構建64位擴展dll?
- 26. 如何在Visual Studio中的Windows Form C++ .NET項目中添加本機C++ dll?
- 27. 在Windows 7上安裝Visual Studio 2003 64位
- 28. 在C#單元測試中使用64位本機.DLL
- 29. 在Visual Studio 2003
- 30. 如何避免Visual Studio(Cassini)64位dll錯誤?
我不認爲2003有一個內置的64位編譯器。如果你使用其他編譯器,它應該可以直接使用。 – Christopher 2009-11-02 13:45:55