如果我附加到應用程序的進程並調試,然後停止調試並重新編譯依賴程序集,是否可以向我的應用程序添加邏輯,該應用程序會卸載/重新加載到該程序集,以便我能夠重新連接到進程並再次調試而不重新啓動?是否可以重新加載調試程序集並重新連接到進程?
1
A
回答
1
我想技術上是可能的,如果你的代碼寫入到動態加載組件(如插件組裝),但即使如此,如果沒有課/已被用於從組件資源它會只工作。所以,對於所有現實的目的,不,您啓動的是您正在運行的內容。
也就是說,你想嘗試什麼聲音相當接近到什麼編輯和繼續做在Visual Studio。你嘗試過嗎?爲什麼你需要首先重新編譯程序集?
0
你可以嘗試Shadow Copy Cache。 我從它在NUnit中的使用中知道它,在那裏你可以在不重新啓動NUnit GUI的情況下更改你的測試代碼。
相關問題
- 1. 是否可以重新加載MapView?
- 2. 是否可以重新加載CLR?
- 3. 重新連接到Linux中的進程
- 4. 我可以重新加載Mono CSharpRepl中的程序集嗎?
- 5. 加載NIB並重新建立連接
- 6. 我是否需要強制GAC重新加載程序集?這可能嗎?
- 7. 是否socket.io重新連接重新運行連接?
- 8. 如何重新加載.NET應用程序域的程序集?
- 9. 在拔下USB電纜後重新連接應用程序進行調試
- 10. Azure Web應用程序重新啓動後SignalR重新連接
- 11. Asterisk:重新連接到遠程mySQL?
- 12. iPhone web應用程序總是重新加載應用程序
- 13. 應用程序是否可以影響TCP重新傳輸
- 14. 是否可以重新簽署Mac OSX應用程序
- 15. 是否可以從用戶輸入重新啓動程序?
- 16. 重新加載SCSF應用程序
- 17. ExtJs 4重新加載應用程序
- 18. GlassFish應用程序重新加載
- 19. 重定向到頁面時,是否可以不重新加載用戶控件?
- 20. self.tableview重新加載後,應用程序連接到互聯網不工作
- 21. 是/否提示重新運行程序
- 22. 當加載程序重新啓動時,onLoadFinished並不總是被調用
- 23. 連接會話中間件 - 重新生成與重新加載
- 24. 是否可以在連接到Windows的iPhone上進行調試?
- 25. 是否可以在Unity編輯器中選擇性地阻止某些程序集的重新加載?
- 26. 是否有可能重新部署Heroku應用程序,而無需重新啓動一些進程類型
- 27. 調試時重新加載elisp代碼
- 28. 斷開並重新連接以編程方式顯示
- 29. 是否可以使用pm2觀看和優雅重新加載?
我的程序集是在一個單獨編譯的dll中。這是你的意思是插件? – 2010-10-13 23:09:14
否 - 您的DLL可能會單獨編譯,但如果您的C#應用程序直接引用它,那麼您將無法在運行時卸載它。但是,如果您的代碼在運行時顯式加載DLL(例如,使用'Assembly.Load'),那麼您可以想象卸載它並重新加載不同的版本 - 但是無法維護DLL中任何類的實例。但是,實際上你想要解決的問題是什麼? – 2010-10-13 23:39:58
我不想重新啓動的應用程序是一個帶有不會保持任何狀態的GUI的測試工具。它從一個單獨的DLL中調用的集成服務之一調用一個COM互操作庫,然後調用一個流行的桌面計帳軟件中的例程,該軟件具有明確授權我的測試應用程序進行連接的配置 - 但是,我懷疑這是與以VS2010的調試器工作的方式,它無法識別應用程序並拒絕正常調試模式下的連接,但如果我正常啓動並連接到進程,那我很好。 – 2010-10-14 15:46:14