我給了我的軟件用戶從開放文件對話框中選擇DLL的機會(所以我的用戶可以從我的網站下載DLL並將其用於主項目)。一切工作正常,它甚至可以發現,DLL是由我提供或選擇一個無效的dll.but問題引發如果用戶選擇一個重命名的文件(例如:apple.txt文件重命名爲Apple.dll)。我輸入了這樣的代碼德爾福loadlibrary錯誤()
嘗試 dllHandle:= LoadLibrary(pwidechar(openfiledialog1.filename));
抓 {showmessage如果它不是一個dll(但它可以是任何DLL,它檢查這是我的DLL或第三方版本)}
末;德爾福表示
錯誤消息「壞庫圖像中選擇」
但嘗試,如果用戶選擇無效的DLL它顯示了自己的錯誤消息,奏響了抓不工作。
誰能幫助我,我使用德爾福2009年
感謝Sertac Akyuz,我認爲它的工作原理 – VibeeshanRC 2010-10-15 13:40:46
要添加到這一點,調用LoadLibrary()可以改變加載的DLL/EXE的FPU控制字,所以最好使用SafeLoadLibrary()代替。 – 2010-10-19 04:44:41