看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) vc2013 問題(Question): 目前在把一套A程式改成自動化程式,過程中有用到A程式的lib檔與包library的head檔 也有包到自己的程式裡,確定在自己的開發環境build code是沒問題後 把release的程式放在其他電腦上去跑,就出現出現遺失A程式的dll檔 (A程式有附lib與dll,不過我用了lib檔後就能使用它的api,就沒在用dll檔 若要用dll檔,請問該怎麼加入?) 後來把A程式裡所有的DLL檔丟進去後,就說我少了mfc120ud.dll檔... 去google後,把執行階段程式庫裡的設定從MT改成MD選項 但這樣設定程式build code會失敗 我認為應該是環境設定上的問題或是lib設定有問題 (lib設定是在連結器->輸入->其他相依性 加入,debug與release都有加) 不知道是哪邊出了問題呢?謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.224.100.129 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1434546784.A.64B.html
Qbsuran: -md 要去查一下 有點忘了設定在哪 06/17 22:35
damody: mfc120u.dll是release 你的是release 連到debug的 06/17 22:39
Jockey66666: 你的A程式的lib是debug版本的,要build release的 06/17 22:41
Jockey66666: 既然有dll那表示你應該是build成dynamic link的吧 06/17 22:42
Jockey66666: 執行的時候要和執行檔放一起.. 06/17 22:43
ybelauren: j大的意思是dll要在release設定且跟設定lib的方式一樣? 06/17 22:49
Jockey66666: 你先釐清一下你的lib和dll怎麼build出來的 06/17 22:50
原本程式的DLL檔有約26個,DLL跟LIB檔都是跟A程式放在一起的 文件上說只要放LIB,就可以使用它的library API 我確定在自己的debug/release都可以用,只是拿到別的電腦就說我缺少DLL檔... ※ 編輯: ybelauren (36.224.100.129), 06/17/2015 22:55:01
Jockey66666: 我不太懂你上面那句是什麼意思 06/17 22:52
ybelauren: 我的意思是不了解如何設定dll動態連結= = 06/17 22:57
Jockey66666: 因為你"別的電腦"沒有debug環境啊.. 06/17 23:46
Jockey66666: 我不懂設定dll動態連結這句話的意思 06/17 23:49
Jockey66666: dll就是動態連結函式庫了 字面上的意思 你要設定什麼 06/17 23:50
我誤會了XD 我是有把所有DLL都放在release資料夾下,如前面所說 放完A程式所有DLL檔後,接著電腦說我缺少mfc120ud.dll ※ 編輯: ybelauren (36.224.100.129), 06/18/2015 00:00:16
Jockey66666: 因為你的A程式去link到debug版的library了阿 06/18 00:01
Jockey66666: 2F其實就已經說很清楚了 06/18 00:02
firose: A 程式要改成連結 release 版的 mfc 06/18 14:09
firose: 然後目標電腦要裝 VC++ 可轉散發套件 06/18 14:09