摘要:已經Unload的Domain其載入的組件如何變更?
問題串發問於MSDN論壇
http://social.msdn.microsoft.com/Forums/zh-TW/be1e950e-6d3c-43ec-bbba-f0c60959d54a/unloaddomain
我整理出來有2個重點
1) 輸出的Dll名稱需手動改名,例名本來叫ABC.dll,可以手動改成ABC_V1.dll
(註:在屬性頁直接改輸出的組件名稱是沒有用的)
2) 改用appDomain.CreateInstanceFromAndUnwrap()
測試的Code, 執行WindowsFormsApplication1.exe中的Button1後,會跳出一個視窗,
接著關閉"跳出來的"視窗(主視窗不需要關閉),則ClassLibrary1_V1.dll就可以刪除了。
如此,我就可以將修改後的ClassLibrary1.dll再copy到執行檔的目錄底下,並改名成ClassLibrary1_V1.dll。
並再按下Button1,就會看到變更後的新視窗了。
測試方案
============ 以下是簽名檔 ============
一個小小螺絲釘。
第一次建立Blog,希望以後能慢慢充實它。
Howard