Windows上解決無法定位程序輸入點“*”於“*.dll”上的思路方法


dll是Windows世界的支柱,在開發一個Windows應用程序時,為了模塊化降低耦合,需要將一些獨立的功能獨立成dll,而這些dll又可能引用了第三方的dll

程序構建成功后,運行,結果出現了運行時的錯誤:

無法定位程序輸入點*於動態鏈接庫*.dll上。

遇到此類問題,一般無從下手。

一般性思路:

打開depends.exe,在其中打開出錯的dll

在左側查看錯誤的依賴dll是哪個,一般忽略系統dll

點到出錯的依賴dll上,我這里是libcrypto-1.1-X64.dll

看右側的導入導出項目,仔細觀察可以發現EVP_rc5_32_12_16_ofb果然存在問題

使用everything搜索,發現這個依賴dllopenssl中的東西,項目中已經更換了openssl的版本為1.1.1,於是需要將1.1.1版本的libcrypto-1.1-X64.dll拷貝至運行目錄,至此解決!

總結:得益於depends.exe工具,在分析dll問題時首先應該想到它!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM