我正在使用第三方DLL編寫的非託管C++來控制我們擁有的某些硬件。如何重新加載經常崩潰的第三方DLL
不幸的是,這個DLL不時崩潰,我的任務是讓它自動「重新加載」。我不太確定如何繼續獲得最佳結果。
我的項目使用C++。Net 2.0(2005)。我將第三方的東西封裝在單獨的DLL中。我一直在嘗試FreeLibrary()和LoadLibrary()。但是,當我FreeLibrary(),一些內部DLL依賴關係仍然分配和LoadLibrary()將使其崩潰,因爲內存損壞。
建議的另一種方法是使用.NET遠程接口重構整個項目。這會使殺死另一個進程並重啓它變得更容易,但這將是很多工作。
有什麼建議嗎?指針?提示?
對,對於本機代碼,你永遠不知道它損壞了哪些內存(結構) - 包括非常擁有的CLR。 – 2008-12-11 16:44:55