日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

vs2005 vc++ 生成非托管的 不需要.net运行环境的exe程序方法

發布時間:2023/11/30 c/c++ 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vs2005 vc++ 生成非托管的 不需要.net运行环境的exe程序方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在VS2005里開發的VC++程序在編譯的時候,微軟默認會加入自己的?.Net Framework (方便推廣自家產品),讓你的VC++程序依賴它,這就導致程序編譯后,無法跟往常一樣直接打包,在別的機器就能正常運行。如果加入了.Net Framework ,安裝包就會非常大。以下方法很好的解決了這個問題,通過以下兩種方法可以用VS2005將VC++程序編譯為不需要依賴.Net Framework就可以直接運行的程序了。

方法一:

1、右鍵項目-屬性

2、配置屬性-C/C++-代碼生成

3、運行時庫-選擇/mt或者/mtd

?即 Multi-threaded?(/MT) ?或?Multi-threaded?Debug?(/MTd) ?
?? 不要選?Multi-threaded?DLL?(/MD) ?Multi-threaded?Debug?DLL?(/MDd)

4、配置屬性-C/C++-常規

5、選擇在靜態庫中使用MFC

6、編譯運行即可



????方法二:在你的VS安裝目錄里如下路徑
??? /Microsoft Visual Studio 8/VC/redist/Debug_NonRedist/x86/Microsoft.VC80.DebugCRT
??? 下找到下列文件:?
????msVCm80d.dll
????msVCp80d.dll
????msVCr80d.dll
????Microsoft.VC80.DebugCRT.manifest

?? 把這幾個文件拷貝到目標機器上,與你編譯后的可執行程序放置在同一文件夾,或者放到system32下,就可以讓目標機器運行該程序了。

????2.VC++帶模板函數時能編譯不能連接,顯示連接錯誤“error?LNK2019:?無法解析的外部符號”

????解決方法:用模板的時候,把聲明和實現放在一個文件里。因為模板的機制決定了不可能把模板的CPP象其它方式(不用模板)一樣編譯成一個obj,數據類型都是程序中用到時才會知道的,這時連接的函數名也會因類型不同而不同,所以多數編譯器都要求寫在一個文件中。

????3.如果在VC++2005的程序中使用UNICODE字符集的API等函數,可以在項目屬性->配置屬性->字符集處選“使用UNICODE字符集”,如果只用ASCII碼,就選“未設置”即可!

總結

以上是生活随笔為你收集整理的vs2005 vc++ 生成非托管的 不需要.net运行环境的exe程序方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。