我一直在爲我的項目廣泛使用ESENT,我真的很喜歡它的工作原理。而且太穩定了!在Delphi項目中發生Windows 8崩潰問題
但是我有一個Windows 8的巨大問題!無論我何時調用除JetSetSystemParameter之外的其他東西,我都會鏈接到esent.dll(動態或靜態),這個dll會崩潰,將我的應用程序下載到懸崖上。
不幸的是,我仍然無法運行它。我的代碼在Windows 7或更舊版本上運行時沒有問題。但是對於Windows 8,當我嘗試創建一個實例(浮點無效操作)時,esent.dll崩潰。
我嘗試了所有可能的調用約定。這絕對不是問題。我試了一些,發現了這個奇怪的情況:1.我使用VS 2012創建了一個演示應用程序,JetCreateInstance工作得很好。 2.在Delphi XE3中完全相同的代碼會發送esent.dll崩潰。 3.我使用VS 2012創建了一個DLL,導出了在上述演示應用程序中完美工作的方法,認爲這是一個Delphi錯誤。 4.然後我在一個演示的Delphi項目中加載DLL(用6,XE2和XE3嘗試)。稱爲方法和BOOM。同樣的崩潰。
現在我的假設是,微軟不會允許?!?任何其他開發人員的環境與esent.dll正常工作。 這可能嗎?
它可能是Delphi的FPU設置。你有沒有試圖改變這一點? – jachguate 2013-03-26 12:41:44
Duplicate:http://stackoverflow.com/questions/13415275/esent-crashes-with-windows-8 – bummi 2013-03-26 12:46:07
關閉另一個會更好。由於它給予了編程環境,因此這是一個更好的問題,並且可以更好地診斷異常。 – 2013-03-26 12:49:09