我正在使用Visual Studio 2019开发在嵌入式Linux上运行的.NET Core 3应用程序。我能够在Visual Studio 2019中构建代码。如果我将二进制文件手动复制到Linux计算机,然后启动在该计算机上运行的应用程序,则可以将Visual Studio调试器通过Linux中的SSH附加到远程进程,并调试应用。确实可以,但是部署,启动它并为每个调试会话手动附加调试器是很繁琐的。我确实在Visual Studio Code中有一个可以正常工作的脚本,但是我想使用Visual Studio Professional。
我正在尝试编写Visual Studio扩展,以便可以在Visual Studio中按一个键来构建,部署,启动应用程序,然后将其连接到调试器。然后,我将与我的团队共享扩展。除了附加调试器,它几乎可以正常工作。
在扩展名中,我能够列出在Linux计算机上运行的进程,并使用以下代码选择我的应用程序:
EnvDTE100.Debugger5 debugger = (EnvDTE100.Debugger5)dte.Debugger;
EnvDTE80.Transport transport = debugger.Transports.Item("SSH");
EnvDTE80.Engine engine = transport.Engines.Item("Managed (.NET Core for Unix)");
EnvDTE80.Process2 process = (EnvDTE80.Process2)debugger.GetProcesses(transport, "192.168.11.1").Item("app");
process.Attach2(debugger);
有两个问题:
我觉得我真的很想让它开始工作,关于完成它的任何建议?