附上Asp.asp.net MVC应用到iisexpress的c#

本文关键字:iisexpress 应用 MVC Asp asp net 附上 | 更新日期: 2023-09-27 18:08:04

我开发了一个visual studio包插件,今天我需要在c#中实现对iisexpress的附加。

我的插件从上下文菜单中的按钮在visual studio编辑器中构建活动文档的项目,并在例程结束时,我需要附加它。

我已经研究并发现了它:

System.Diagnostics.Debugger.Launch();

但是当这段代码被执行时,Visual Studio会冻结并关闭。

在此代码之前,我尝试通过:

找到iisexpress进程:
var IsIisRunning = System.Diagnostics.Process.GetProcessesByName("iisexpress");
if (IsIisRunning.Length == 0)
    return;

所以我知道这个过程是存在的。

我忘了什么吗?

有人能帮帮我吗?

感谢您的宝贵时间。

附上Asp.asp.net MVC应用到iisexpress的c#

我使用ENVDTE80解决了这个问题。Process2对象如下:

EnvDTE80.Debugger2 dbg2 = (EnvDTE80.Debugger2)dte.Debugger;
EnvDTE80.Transport trans = dbg2.Transports.Item("Default");
EnvDTE80.Engine dbgeng;
dbgeng = trans.Engines.Item("Managed (v4.5, v4.0)");
var proc2 = (EnvDTE80.Process2)dbg2.GetProcesses(trans, Environment.MachineName).Item("iisexpress.exe");
proc2.Attach2(dbgeng);