![](/img/trans.png)
[英]The procedure entry point _ftol2 could not be located in the dynamic link library msvcrt.dll
[英]The procedure entry point could not be located in the dynamic link library Core.dll
我正在轉換我的項目使用DLL,並試圖拆分我的Singleton
類,以避免使用模板。
我的班級LudoMemory
最初繼承自Singleton
。 我試圖賦予它現在銷毀和創造自己的功能,讓我的主引擎不依賴於Singleton
。
我寫了一個簡單的破壞方法,如:
LudoMemory *memory_Singleton = NULL;
void LudoMemory::Destroy()
{
LUDO_SAFE_DELETE(m_Singleton)
}
並在運行程序時(沒有編譯器錯誤)我收到此錯誤:
程序入口點?Destroy @ LudoMemory @@ SAXXZ無法位於動態鏈接庫LudoCore.dll中
LudoCore
是LudoMemory
所屬的項目。 為什么會這樣? 我該如何解決?
您的系統上沒有多個版本的ludocore.dll,對嗎? 過程入口點錯誤通常意味着:您針對ludocore.lib版本x編譯了項目,並且在運行程序時,它使用ludocore.dll版本y,而版本y沒有定義LudoMemory :: Destroy()。
Jacob關於多個DLL版本的答案似乎很可能。
此外,對於某些構建系統,您必須明確列出將在DLL中導出的函數。
研究構建環境,看看是否必須提供要作為入口點導出的方法列表。
在Visual Studio構建環境中,您也可以嘗試通過在鏈接器優化設置中禁用引用[ 否(/ OPT:NOREF) ]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.