導航:首頁 > 源碼編譯 > vs編譯的exe文件不能在電腦上運行

vs編譯的exe文件不能在電腦上運行

發布時間:2022-08-18 12:41:37

⑴ 為什麼用vs編譯出來的exe文件不能在電腦上運行

vs2010編譯出來的程序默認是debug模式是要用到系統以外的msvcr100d.ll,這個文件在沒有裝vs或vs運行庫的電腦里一般沒有,release模式默認要用到系統外的msvcr100.dll,這個文件也是一般電腦上沒有,你最好把相應的dll放在同一個文件夾中傳過去,以便正常運行。還有,如果你直接傳exe文件,QQ會把這個exe文件重命名成「**.exe.重命名文件」,也就是exe文件到對方那裡成了".重命名"文件,結果對方電腦找不到相關聯的程序,所以提示不知道用什麼打開程序,你可以讓他再重命名成exe文件,要麼你把exe文件放在一個文件夾裡面,然後把文件夾傳過去,文件夾裡面的exe文件是不會重命名的成「.重命名」文件的,只有直接傳exe文件時才會被替換成重命名文件。

⑵ VS製作的exe文件怎麼在別的電腦上運行

調查好你用到的動態庫及靜態庫,放在exe同一個路徑下就能運行,如果不行,把dll放在system32下,或者加環境變數

⑶ 用VS2010寫的程序為什麼在其他電腦上不能運行

要成功運行程序,需要一個名字叫msi的系統資料庫。msi拒絕訪問也就是說,你的程序無法訪問msi這個必要的系統資料庫。。這不是你的程序本身的問題,你的電腦也沒問題!!而是別的電腦有問題,這個原因可能是 別的電腦那個msi系統文件損壞了 或者不存在 這需要修復。

⑷ 用vs2010編譯出來的可執行文件xx.exe(在debug文件夾裡面的那個),在不裝vs的電腦上為什麼就不能運行了

vs2010編譯出來的程序默認是debug模式是要用到系統以外的msvcr100d.ll,這個文件在沒有裝vs或vs運行庫的電腦里一般沒有,release模式默認要用到系統外的msvcr100.dll,這個文件也是一般電腦上沒有,你最好把相應的dll放在同一個文件夾中傳過去,以便正常運行。還有,如果你直接傳exe文件,QQ會把這個exe文件重命名成「**.exe.重命名文件」,也就是exe文件到對方那裡成了".重命名"文件,結果對方電腦找不到相關聯的程序,所以提示不知道用什麼打開程序,你可以讓他再重命名成exe文件,要麼你把exe文件放在一個文件夾裡面,然後把文件夾傳過去,文件夾裡面的exe文件是不會重命名的成「.重命名」文件的,只有直接傳exe文件時才會被替換成重命名文件。

⑸ 求助:用VS2010生成的exe文件為什麼不能直接運行

用vs2010自帶的打包工具打包即可。但也要對方電腦上有.net framework。如果沒有,要額外把這個也打包進去。

⑹ visual studio編寫的exe程序不能在沒裝vs的電腦上運行,怎麼辦啊

其實有很多的解決辦法呀,如下:(一般你看是具體什麼提示然後,使用相應的提示到G.cn或網路找答案即可.....),下面的方法可參考使用...
1).在C:\Program
Files\Microsoft
Visual
Studio
8\VC\redist\Debug_NonRedist\x86
\Microsoft.VC80.DebugCRT
下找到了下列文件:
msvcm80d.dll
msvcp80d.dll
msvcr80d.dll
Microsoft.VC80.DebugCRT.manifest
把這幾個文件拷貝到目標機器上,與運行程序同一文件夾或放到system32下,就可以運行那個程序了。
其他release版,MFC程序什麼的都是拷redist下相應文件夾下的文件就可以了,文件夾後都有標識!
2).修改編譯選項,將/MD或/MDd
改為
/MT或/MTd,這樣就實現了對VC運行時庫的靜態鏈接,在運行時就不
再需要VC的dll了。
3).
工程-》屬性-》配置屬性-》常規-》MFC的使用,選擇"在靜態庫中使用mfc"
這樣生成的exe文件應該就可以在其他機器上跑了。
4).在vc8安裝盤上找到再分發包vcredist_xxx.exe和你的程序捆綁安裝
5).修改項目屬性的編譯開關
工程-->屬性-->配置屬性-->C/C++-->代碼生成-->運行時庫
修改為Multi-threaded(/MT)
修改了Runtime類型以後,需要將MFC的編譯類型也改成靜態庫
工程-->屬性-->配置屬性-->常規-->MFC的使用
修改為:在靜態庫中使用MFC;
一部分情況下在這步就能解決問題,另外一部分情況會遇見如下情況,編譯器報錯:儲如:"再次定義"
解決方法如下:
工程-->屬性-->配置屬性-->鏈接器-->輸入-->附加依賴項
中加入相應的*.lib
(如:加入nafxcw.lib,libcpmt.lib
)這一般根據你程序所報的錯進行修改;
工程-->屬性-->配置屬性-->鏈接器-->輸入-->特定的庫
(如:加入nafxcw.lib,libcpmt.lib
)
這樣鏈接程序就不會先按照默認順序來連接這兩個庫文件,而是在最後在加入對他們的引用.
下面是一張可能發生沖突的列表
若要使用此運行時庫
請忽略這些庫
單線程
(libc.lib)
libcmt.lib、msvcrt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib
多線程
(libcmt.lib)
libc.lib、msvcrt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib
使用
DLL
的多線程
(msvcrt.lib)
libc.lib、libcmt.lib、libcd.lib、libcmtd.lib、msvcrtd.lib
調試單線程
(libcd.lib)
libc.lib、libcmt.lib、msvcrt.lib、libcmtd.lib、msvcrtd.lib
調試多線程
(libcmtd.lib)
libc.lib、libcmt.lib、msvcrt.lib、libcd.lib、msvcrtd.lib
使用
DLL
的調試多線程
(msvcrtd.lib)
libc.lib、libcmt.lib、msvcrt.lib、libcd.lib、libcmtd.lib

⑺ vs2013編譯後EXE無法運行

需 要對方電腦也安裝.netframework
版本和你開發時的版本一樣才行的

閱讀全文

與vs編譯的exe文件不能在電腦上運行相關的資料

熱點內容
壓縮包製作後照片順序怎麼改 瀏覽:680
fibonacci數列演算法 瀏覽:775
產品經理要和程序員吵架嗎 瀏覽:252
grub2命令行 瀏覽:618
無法獲取加密卡信息 瀏覽:774
雲伺服器網卡充值 瀏覽:509
編程就是軟體 瀏覽:49
伺服器如何添加許可權 瀏覽:437
引用指針編程 瀏覽:851
手機加密日記本蘋果版下載 瀏覽:63
命令行括弧 瀏覽:176
java程序升級 瀏覽:490
排序演算法之插入類 瀏覽:227
gcccreate命令 瀏覽:73
海爾監控用什麼app 瀏覽:64
系統盤被壓縮開不了機 瀏覽:984
linuxredis30 瀏覽:541
狸窩pdf轉換器 瀏覽:696
ajax調用java後台 瀏覽:906
活塞式壓縮機常見故障 瀏覽:614