我正在通過System.Reflection.Assembly.LoadFile
加載DLL
,並在插件式系統中反映它的成員。 我需要能夠在系統運行時更新/覆蓋這些DLL
,但看起來在調用System.Reflection.Assembly.LoadFile
後文件隨後被鎖定。
有誰知道解鎖文件的方法嗎?
我已閱讀關於在單獨的appdomain中加載文件?這種方法有沒有陷阱?System.Reflection.Assembly.LoadFile鎖定文件
33
A
回答
63
如果使用這樣的:
System.Reflection.Assembly.Load(System.IO.File.ReadAllBytes(path))
它不會鎖定該文件。
編輯
雖然這個工程,它不是最好的解決辦法,但這樣做的更好的方法是(只是這裏粘貼所有的代碼太多)了很多更復雜。
我已經創建了一個公共倉庫在Github這裏所有的代碼做正確的:包含在微軟的FxCop
0
使用Microsoft.Cci
樣品1.35版本:
using Microsoft.Cci;
// [...]
AssemblyNode assembly = AssemblyNode.GetAssembly(path);
相關問題
- 1. System.Reflection.Assembly.LoadFile失敗(建議?)
- 2. FileInfo鎖定文件!
- 3. HttpPostedFileBase鎖定文件
- 4. Java文件鎖定
- 5. PowerShell鎖定文件
- 6. Linux文件鎖定
- 7. 鎖定XML文件
- 8. System.IO.File.Create鎖定文件
- 9. 如何使Windows文件鎖定更像UNIX文件鎖定?
- 10. 不支持操作 - System.Reflection.Assembly.LoadFile()
- 11. 解鎖鎖定的java文件Android studio
- 12. 用PhpStorm鎖定/解鎖文件
- 13. 從輸入文件鎖定和解鎖
- 14. 移動鎖定的文件
- 15. 鎖定文件關聯
- 16. OpenFileDialog()鎖定文件夾
- 17. FindFirstChangeNotification鎖定父文件夾
- 18. 跨服務鎖定文件
- 19. 文件鎖定在PHP
- 20. Subversion:鎖定文件失敗
- 21. C#如何鎖定文件
- 22. .NET BitmapSource鎖定文件
- 23. BitmapImage.UriSource鎖定本地文件
- 24. 在AccuRev中鎖定文件
- 25. C#文件被鎖定後
- 26. 鎖定的文件名
- 27. 測試鎖定文件
- 28. File.GetFiles或File.EnumerateFiles鎖定文件?
- 29. Visual Studio 2017鎖定文件
- 30. SFTP文件鎖定機制
真的嗎?!?如果它工作的話,它會很酷! +1 – 2009-06-23 09:06:25