【问题标题】:Remote Debugging Server Side of a Web Application with Visual Studio 2008使用 Visual Studio 2008 远程调试 Web 应用程序的服务器端
【发布时间】:2010-09-07 13:44:37
【问题描述】:

所以,我了解到在我的测试服务器机器上安装 VS2008 并不是一个好主意,因为它会过多地改变运行时环境。我以前从未尝试过使用 Visual Studio 进行远程调试,那么逐行远程调试服务器端 Web 应用程序代码的“最佳”方法是什么。我希望能够设置断点、附加并开始逐行验证代码流,以及调试和其他东西:)。

我确信大多数答案都与 ASP.NET 代码有关,我对此很感兴趣,但我当前的代码库实际上是经典 ASP 和 ISAPI 扩展,所以我更关心这一点。

另外,我的测试服务器在 VMWare 中运行,我注意到在最新的 VMWare 安装中提到了一些关于调试支持的内容,但我不熟悉这意味着什么......任何人都在使用它,它有什么用你呢?

【问题讨论】:

    标签: asp.net visual-studio debugging asp-classic


    【解决方案1】:

    Visual Studio 附带一个remote debugger,您可以将其作为 exe 在您的服务器上运行。如果您可以将其作为与您的 Visual Studio 副本相同的域用户运行,则效果最佳。然后,您可以从您的机器上的调试器附加到进程到服务器上的 IIS 进程,并像在您的机器上运行一样进行调试。您可以获得更多 .Net 调试选项,但也支持旧平台。

    【讨论】:

    • 我们需要将 msvsmon.exe 文件复制到服务器的哪个位置?
    • @abid 我不认为位置很重要,你需要运行它,所以在任何地方都有正确帐户的执行权限
    【解决方案2】:

    首先,如果服务器和您的工作站都在同一个域中,这会容易得多(服务器需要访问权限才能连接到您的计算机)。在您的 C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x86(或 x64 或 ia64)目录中是您需要复制到服务器的文件。 Visual Studio 版本之间存在不同的版本,因此请确保它们在客户端和服务器端匹配。在服务器上,启动 msvsmon。它会说类似“Msvsmon 启动了一个名为 xxx@yyyy 的新服务器”。这是您将在 Visual Studio 中用于连接到此服务器的名称。您可以进入“工具”>“选项”来设置服务器名称并设置身份验证模式(希望是 Windows 身份验证)-顺便说一句,无身份验证不适用于托管代码。

    在客户端,打开 Visual Studio 并加载要调试的解决方案。然后转到调试>附加到进程。在“限定符”字段中输入您之前看到的服务器名称。单击“选择”按钮并选择要调试的代码类型,然后单击“确定”。希望您会看到可以附加到的服务器上的进程列表(您还应该在服务器上看到调试监视器刚刚说您已连接)。找到要附加的进程(如有必要,启动应用程序)。如果它是一个 ASP.NET 网站,您将选择 w3wp.exe,然后点击附加。设置断点,希望您现在可以远程调试代码。

    AFAIK - VMWare 选项允许您在 VM 内启动代码,但可以从您的工作站对其进行调试。

    【讨论】:

      猜你喜欢
      • 2011-05-15
      • 1970-01-01
      • 1970-01-01
      • 2010-09-23
      • 1970-01-01
      • 2011-10-08
      • 2011-09-10
      • 2016-10-03
      • 2011-07-30
      相关资源
      最近更新 更多