调试具有COM依赖项的C#服务应用程序的设置 我正在研究一个C代码代码库,它通过一些在系统上注册的COM与一些传统C++代码集成。由于使用COM的困难,目前的开发环境完全是通过Hyper-V虚拟机建立的。开发工具(例如VisualStudio)也在VM上。基本上我们在主机上什么也不做。所有的开发都是在虚拟机内部完成的。我认为这主要是因为如果COM注册被搞砸了,我们可以通过删除虚拟机并创建一个新的虚拟机来轻松恢复操作系统
我想找到一种将开发环境与虚拟机分离的方法。理想情况下,对虚拟机的需求完全消失了 首先,我想研究一个远程调试选项,其中主机是安装VisualStudio2019的地方,VM仅用于运行时测试/调试。基本上,在虚拟机上运行的只有我编译的程序+在系统上注册的任何COM库调试具有COM依赖项的C#服务应用程序的设置 我正在研究一个C代码代码库,它通过一些在系统上注册的COM与一些传统C++代码集成。由于使用COM的困难,目前的开发环境完全是通过Hyper-V虚拟机建立的。开发工具(例如VisualStudio)也在VM上。基本上我们在主机上什么也不做。所有的开发都是在虚拟机内部完成的。我认为这主要是因为如果COM注册被搞砸了,我们可以通过删除虚拟机并创建一个新的虚拟机来轻松恢复操作系统,c#,visual-studio,debugging,hyper-v,C#,Visual Studio,Debugging,Hyper V,我想找到一种将开发环境与虚拟机分离的方法。理想情况下,对虚拟机的需求完全消失了 首先,我想研究一个远程调试选项,其中主机是安装VisualStudio2019的地方,VM仅用于运行时测试/调试。基本上,在虚拟机上运行的只有我编译的程序+在系统上注册的任何COM库 当我在C++中做了类似的设置时,我记得编译可执行文件到安装在VM上的主机上的一个文件夹。从那里,您可以使用VM上的远程调试工具(从主机上的VS)使用装载文件夹的路径启动调试会话 对于C#来说,我不确定是否有类似的机制可用,也不确定它是否
当我在C++中做了类似的设置时,我记得编译可执行文件到安装在VM上的主机上的一个文件夹。从那里,您可以使用VM上的远程调试工具(从主机上的VS)使用装载文件夹的路径启动调试会话
对于C#来说,我不确定是否有类似的机制可用,也不确定它是否可行。任何人都可以通过一个好的设置来分享他们的经验吗 理想情况下,不需要虚拟机,相反,我可以通过其他方式“沙箱”主机操作系统中的COM内容。我认为,对操作系统的依赖越少越好,至少在调试方面是这样。值得注意的是,该应用程序通常作为windows服务运行,为了进行调试,我尝试将其作为控制台应用程序运行