新的改进的附加到进程对话框体验

哈沙达洞

通过VisualStudio2022,我们承诺引入新的工具来提高内部循环的生产力和调试体验。此外,我们有几个令人兴奋的调试更新,新的Attach to Process对话框体验就是其中之一。

我们在attach-to-process对话框中添加了命令行详细信息、应用程序池详细信息、父/子进程树视图以及从桌面选项选择运行窗口。这些可以方便地找到需要附加的正确流程。此外,“附加到进程”对话框现在是异步的,即使在进程列表更新时也可以进行交互。所有这些功能都应在最新的Visual Studio 2022预览版本中可用。

让我们来看看!

“附加到进程”对话框中的命令行和AppPool详细信息

调试多个ASP时。NET核心应用程序,许多实例将在可用进程列表中显示为dotnet.exe。

类似地,当您有多个web应用程序在您的计算机上使用多个应用程序池运行时,它们将创建多个工作进程(W3WP.exe)。若要确保Visual Studio调试器在断点处暂停,您需要选择属于目标web应用程序的正确工作进程。

对于上述两种情况,确定要附加的流程是一项挑战。要找到正确的进程,您需要使用任务管理器等工具获取PID,然后使用命令行详细信息确定正确的dotnet.exe进程,或者使用appcmd.exe实用程序确定哪个PID属于哪个IIS进程。最后,在“附加到进程”对话框中选择要与调试器附加的进程。

启动VS2022 Preview 2,您将在Attach to Process对话框中看到所有这些详细信息。如果适用,我们在标题栏中添加了一个新的命令行列或应用程序池详细信息,因此您不需要来回使用其他工具来区分外观相同的进程。

附加到进程对话框:标题列中的AppPool详细信息

“附加到进程”对话框:“标题”列中的AppPool详细信息

自动刷新进程视图

选中后,自动刷新复选框将使用可用进程自动刷新进程列表。因此,进程列表会异步更新,并实时提供更新的进程。

 

显示流程树

此复选框将可用进程平面列表替换为分层父子视图。当您正在调试的应用程序生成多个进程时,这可能会很有帮助。

例如,如果您尝试调试Chromium,由于其多进程架构,它可能会变得很有挑战性。在调试器中选择“运行”时,默认情况下只调试主浏览器进程。呈现网页的代码将位于单独的子进程中。新的流程树视图可以显示这些流程是如何关联的,从而很容易确定要附加到的正确子流程。

附加到流程对话框:流程树视图

“附加到流程”对话框:流程树视图

从桌面附加到正在运行的进程

可用进程下的“选择窗口”按钮允许您选择任何正在运行的窗口/应用程序,并将其附加到其关联进程。

您不需要知道与该应用程序关联的进程名称,也不需要搜索进程列表;您可以方便地指向桌面上的窗口,只需几次单击即可将其附加到进程中。

自动生成包含文本、计算机、计算机、室内描述的图片

“附加到进程”对话框:选择正在运行的窗口进程

你的反馈很重要!

我们希望您能帮助您使Visual Studio 2022成为最佳的开发人员体验。我们建议您下载Visual Studio 2022预览版并试用这些功能。我们感谢您抽出时间通过以下方式提供反馈开发者社区,报告问题.

 

11条评论

讨论结束。登录以编辑/删除现有评论。

  • 瓦利·瓦伦丁 0

    可能是新的但没有改进,很多时候当连接到一个网络集成的w3wp进程时,会经常并且可能会随机崩溃,并导致所有visual studio 2022进程和w3wp一起结束,而在vs2019和更早版本上做同样的事情时,这种情况永远不会发生。你能解决这个问题吗

  • 西奥·阿尔伯斯 0

    我们通常使用ASP。NET核心项目,前端使用vuecli。调试REST API就像是一种魅力。调试SPA网站更多的是一种console.log体验。Edge/Chrome开发工具很管用。对于VS2022的前端调试,是否有任何tlc?

  • 巴斯·范·哈顿 0

    看起来是一个有用的改进,但它真的很难支持暗模式吗?

    • 施巴姆 0

      当我读到标题时,首先想到的是:我希望它的主题符合VisualStudio本身。当其他一切都是黑暗的,而其中一个对话框是白色的时,我的眼睛会很疼。

        • 豪尔赫·莫拉莱斯·维达尔 0

          你好,@Harshada,
          开发者社区站点中的票证不存在,当单击您提供的链接时,该站点显示:

          “我们无法获取此反馈项目。可能是因为您无权访问它或它不存在
          错误详细信息:[“如果您最近创建了此票证,我们的系统仍在同步。请在15-20分钟后刷新,票证详细信息应可用。找不到id为'1528641'的票证”]“

          你有正确的链接吗?我想在开发者社区网站上关注这张票,谢谢!

          • 哈沙达洞Microsoft员工 0

            对不起,链接现在已经修复,您应该可以访问票据了。

  • 斯特凡诺·彼得罗桑蒂 0

    我希望“Reattach to Process”菜单项在同一VisualStudio解决方案的会话之间保持不变。这是一个小小的不便,但它有助于节省重新选择流程的时间,而且在重新打开我很久没有使用过的解决方案时也会有所帮助。

    • 吉西德克 0

      对!我会要求能够添加过滤器“仅我的项目”。因为相信我从未调试过chrome.exe、conhost.exe或GoogleCrashHandler.exe等进程

  • 惊蛰山 0

    你好,

    有人能为我提供一个链接或文档,介绍如何在VS2022中调试Azure Web App吗?

    谨致问候,

    • 罗伯托·门西亚·佛朗哥 0

      在VS2022中无法进行远程调试。至少在RC2中还没有。或者我找不到怎么做。
      过去有一个云资源管理器,它使这个过程变得非常简单。只需右键单击应用程序服务并选择附加调试器。完成。
      现在云资源管理器也不见了。所以谁知道呢。

      哦,等等,RC意味着它的功能已经完成,只有熨烫错误,没有功能缺失。所以也许不再有远程调试了。或者在最终版本中有远程调试,但没有给人们一个机会来尝试、报告问题和提供反馈。或者在RC3发布前一周。或在VS2022 17.1中。

反馈usabilla图标