web.config中
<compilation defaultLanguage="c#" debug="true">
......
<customErrors mode="Off"></customErrors>

解决方案 »

  1.   

    Visual Studio 为执行远程调试提供了两种方法: 首选方法使用 DCOM 和计算机调试管理器。有关更多信息,请参阅使用 DCOM 和计算机调试管理器进行远程调试。 
    第二种方法使用 TCP/IP。TCP/IP 远程调试只可用于本机 C 或 C++ 应用程序。有关更多信息,请参阅使用 TCP/IP 进行远程调试。 
    注意 仅使用 TCP/IP 支持对(或从)Windows XP Home Edition 的远程调试。
    安装了远程调试后,需要通过添加调试器用户或配置 DCOM 来向调试器用户授予访问权限。有关更多信息,请参阅添加调试器用户和配置 DCOM。注意 远程调试安装程序为 SQL Server 安装 SQL 调试组件。在安装 Visual Studio .NET 时远程安装程序自动运行,或者可以选择单独运行它。有关更多信息,请参阅 SQL 调试组件。
    使用 DCOM 和计算机调试管理器进行远程调试
    对于使用 DCOM 进行的远程调试,必须安装计算机调试管理器 (MDM.exe) 并使其在远程计算机上运行。MDM.exe 以服务的形式运行,并可使用服务控制面板对其进行配置。有三种安装 DCOM 远程调试的方法。 可在远程计算机上安装 Visual Studio .NET 的完全授权版本。 
    可在远程计算机上运行 Visual Studio 安装程序 CD-ROM 并且在安装向导中选择远程组件安装程序。这将仅安装远程调试组件。选择了远程组件安装程序后,会有两个选项。 
    本机远程调试安装使调试器能够连接而仅调试本机代码的组件。 完全远程调试安装使调试器能够连接以调试本机代码、运行在公共语言运行库上的托管代码以及脚本(VBScript 或 Jscript)的组件。如果计算机上安装了 SQL Server,则还将安装用于 SQL 远程调试的组件。 有关更多信息,请参阅远程组件安装程序。 可手动安装本机远程调试所需的最小的一组组件。这些文件是: 
    msvcmon.exe
    msvcr70.dll
    natdbgtlnet.dll
    natdbgdm.dll psapi.dll(仅限于 NT4) 若要获得转储支持(有关更多信息,请参阅转储),请也安装以下文件: dbghelp.dll(支持转储) 可将所有这些文件复制到远程服务器上的同一位置,或者可从正在运行 Visual Studio .NET 的本地计算机上的共享运行它们。使用共享使您能够调试运行在您无法安装文件的远程计算机上的应用程序。 计算机调试管理器注册
    如果安装了 Windows NT Option Pack 4.0,计算机调试管理器将从注册表中消失。下次尝试用 Visual Studio .NET 进行远程调试时,将显示一个对话框,要求您注册 MDM。有关更多信息,请参阅 MDM 注册在安装了 Windows NT Option Pack 4.0 后消失。使用 TCP/IP 进行远程调试
    注意 TCP/IP 调试只可用于对本机 C 或 C++ 应用程序进行的远程调试。
    对于使用 TCP/IP 进行的远程调试,必须安装远程调试监视器并使其在远程计算机上运行。远程调试监视器 (msvcmon.exe) 是一个小的控制台应用程序,它与调试器宿主进行通讯并控制正在调试的程序的执行。此外,远程调试监视器还需要某些支持文件。有关更多信息,请参阅远程组件安装程序。警告 TCP/IP 调试使您可以在未安装 DCOM 的远程计算机上调试应用程序,但它提供的安全性比 DCOM 调试要低,因此使用时应多加小心。如果未经授权的用户通过 msvcmon 连接到计算机,则该用户可能破坏计算机的安全性。
    远程调试监视器 (msvcmon) 可执行文件安装在 Microsoft Visual Studio .NET\Common7\Packages\Debugger 目录中。可从 Windows“开始”菜单或从命令提示处启动远程调试监视器。启动远程调试监视器的命令行是:msvcmon
    –anyuser 选项使任何用户都可以通过 msvmon 进行连接来调试应用程序:msvcmon -anyuser
    注意 –anyuser 选项使具有网络访问权的任何用户都可以连接到计算机以进行远程调试,这可能会引起严重的安全风险。
    可用于 msvcmon 的另一个选项是 -?,它将列出这两个 msvcmon 选项:msvcmon -?
    注意 远程调试监视器 (msvcmon) 是在 DCOM 以及 TCP/IP 下对本机应用程序进行远程调试所必需的。DCOM 下的远程调试自动启动 msvcmon。
    请参见
      

  2.   

    对于远程调试,本地和远程计算机必须位于域设置中,或者,如果它们不在工作组设置中,则两台计算机都必须运行基于 Windows NT 的操作系统(Windows NT、Windows 2000 或 Windows XP)。 
      

  3.   

    本主题描述使用 Visual Studio .NET 调试 ASP.NET Web 应用程序的操作系统要求。本地调试是尝试在本地(客户端)计算机上调试 Web 应用程序的方案。也就是说,Visual Studio .NET 和 Web 应用程序安装并运行在同一台计算机上。对 ASP.NET 应用程序进行本地调试要求使用 Windows 2000 或 Windows XP(Professional、Server 或 Advanced Server 版本)。 远程调试是在一台计算机(客户端)上运行 Visual Studio .NET 而调试在另一台计算机(服务器)上运行的 Web 应用程序的方案。对 ASP.NET 应用程序进行远程调试要求使用运行 Windows NT 4、Windows 2000 或 Windows XP(任何版本)的本地客户端。远程服务器必须运行 Windows 2000 或 Windows XP(Professional、Server 或 Advanced Server 版本)。对于所支持的所有操作系统: 若要调试 ASP.NET 应用程序,您的名称必须在“调试器用户”(Debugger Users) 组中。 
    对于远程调试,本地和远程计算机必须位于域设置中,或者,如果它们不在工作组设置中,则两台计算机都必须运行基于 Windows NT 的操作系统(Windows NT、Windows 2000 或 Windows XP)。 
    若要调试 aspnet_wp.exe,必须具有调试该进程的权限。这意味着如果 aspnet_wp.exe 进程正在以 SYSTEM(默认)运行,则需要管理员特权才能调试它。对于远程调试,您需要在远程服务器计算机上具有管理员特权。若要调试 aspnet_wp.exe 而没有管理员特权,则必须编辑 aspnet_wp.exe 进程的 machine.config 文件以使 aspnet_wp.exe 在用户帐户下而不是在 SYSTEM 下运行。 
    在用户帐户下运行 aspnet_wp.exe 打开 machine.config 文件,该文件位于计算机上安装运行库的路径下的 CONFIG 文件夹中。 
    查找 <processModel> 节并将 user 和 password 属性更改为要使 aspnet_wp.exe 在其下运行的用户帐户的名称和密码。 
    保存 machine.config 文件。 
    查找 Temporary ASP.Net Files 文件夹,它应位于与 CONFIG 文件夹相同的路径中。右击 Temporary ASP.Net Files 文件夹,并从快捷菜单中选择“属性”。 
    在“Temporary ASP.Net Files 属性”对话框中,选择“安全性”选项卡。 
    单击“高级”按钮。 
    在“Temporary ASP.Net Files 访问控制设置”对话框中,单击“添加”按钮。 
    在“名称”框中输入用户名称,然后单击“确定”。 
    在“Temporary ASP.Net Files 权限项目”对话框中,授予用户完全权限,然后单击“确定”以关闭“Temporary ASP.Net Files 属性”对话框。 
    Windows NT 4
    不能在 Windows NT 4 计算机上运行 ASP.NET。可以在 Windows NT 4 客户端上使用 Visual Studio .NET 来远程调试运行在远程服务器上的 ASP.NET 应用程序。该服务器必须运行 Windows 2000 Workstation 和 IIS、带有或不带有“终端服务器”的 Windows 2000 Server 或者 Windows XP Server、Advanced Server 或 Professional Edition。 如果调试客户端正在运行 Windows NT 4 Server 并通过“终端服务器”会话登录到客户端,则不能从 Visual Studio .NET 启动应用程序(通过从“调试”菜单中选择“启动”或“单步执行”命令)而开始自动调试。您必须在启动应用程序时不启动调试,然后使用“进程”对话框手动附加到进程。如果您登录到调试客户端的控制台,则可以使用这两种方法中的任意一种来启动调试。有关更多信息,请参阅附加到正在运行的程序或多个程序。Windows 2000
    可以在 Windows 2000 客户端计算机上使用 Visual Studio .NET 来调试正在本地运行或在远程服务器上运行的 ASP.NET 应用程序。调试客户端可以运行 Windows 2000 Workstation 或 Workstation Server(带有或不带有“终端服务”)。如果客户端计算机正在运行 Windows 2000 Workstation,则必须在调试之前安装 Microsoft Internet 信息服务。 您可以通过以下的方法开始 ASP.NET 调试:在 Visual Studio 内启动应用程序(通过从“调试”菜单选择“启动”或“单步执行”命令)或启动应用程序时不调试,然后使用“进程”对话框附加到它上面。有关更多信息,请参阅附加到正在运行的程序或多个程序。Windows XP
    可以从运行 Windows XP Server、Advanced Server 或 Professional Edition 的客户端计算机调试正在本地运行或在远程服务器上运行的 ASP.NET 应用程序。不能从运行 Windows XP Home Edition 的客户端计算机调试 ASP.NET 应用程序。您可以通过以下的方法开始 ASP.NET 调试:在 Visual Studio 内启动应用程序(通过从“调试”菜单选择“启动”或“单步执行”命令)或启动应用程序时不调试,然后使用“进程”对话框附加到它上面。有关更多信息,请参阅附加到正在运行的程序或多个程序。请参见