close
換台電腦後 找不到.dll模組的錯誤警告:
使用Visual C++ 2010 產生win32 dll檔 給vb2010 引用 , 在裝有開發環境visual IDE下跑 可以正常呼叫dll 內的函數
但是把vb2010產生的執行檔和 dll 拿到另一台沒裝 visual IDE 的電腦
無論是xp or win7 都會出現 找不到.dll模組的錯誤警告
除了注意執行檔要跟呼叫的dll放在同目錄下以外
另有一點需要特別注意
在編譯C dll 的時候 , 預設會產生動態dll , (檔案較小)
如果遇到以上問題, 可以在編譯C dll的時候 設定為產生靜態dll (檔案變大5倍!!)
解決方法:
會發生這個問題的原因是因為當選擇編譯native win32程式的時候,VC2005是預設動態連結.dll函數庫,這個函數庫是要安裝VC2005才會裝上去的,所以在沒有安裝VC2005的電腦上您編譯的原生程式無法執行,這時我們選擇靜態連結函數庫即可解決這個問題。
作法是:
1.在專案上按右鍵,然後選properties。
2.看左側,打開C/C++折疊,選Code Generation。
3.之後看右邊的Runtime Library欄位,改選為靜態連結/MT(這個不包含debug資訊)或是/MTD(這個包含debug資訊)即可。
使用Visual C++ 2010 產生win32 dll檔 給vb2010 引用 , 在裝有開發環境visual IDE下跑 可以正常呼叫dll 內的函數
但是把vb2010產生的執行檔和 dll 拿到另一台沒裝 visual IDE 的電腦
無論是xp or win7 都會出現 找不到.dll模組的錯誤警告
除了注意執行檔要跟呼叫的dll放在同目錄下以外
另有一點需要特別注意
在編譯C dll 的時候 , 預設會產生動態dll , (檔案較小)
如果遇到以上問題, 可以在編譯C dll的時候 設定為產生靜態dll (檔案變大5倍!!)
解決方法:
會發生這個問題的原因是因為當選擇編譯native win32程式的時候,VC2005是預設動態連結.dll函數庫,這個函數庫是要安裝VC2005才會裝上去的,所以在沒有安裝VC2005的電腦上您編譯的原生程式無法執行,這時我們選擇靜態連結函數庫即可解決這個問題。
作法是:
1.在專案上按右鍵,然後選properties。
2.看左側,打開C/C++折疊,選Code Generation。
3.之後看右邊的Runtime Library欄位,改選為靜態連結/MT(這個不包含debug資訊)或是/MTD(這個包含debug資訊)即可。
全站熱搜
留言列表