当我从环境中运行时,我的Visual Studio 2008调试器没有附加到默认网站的根目录,这是一个问题。
我有一个在Visual Studio 2008 SP1上运行的.NET 3.5 Web应用程序项目。我已经将该项目设置为“使用本地IIS Web服务器”,路径为“http://localhost/“。我能够创建虚拟目录,应用程序编译良好。
我的问题是当InternetExplorer启动时,调试器没有连接。我能够“附加到进程”并选择“w3 wpiderexe”,它将调试得很好。这是一个PITA;为什么它不会自动连接?
我曾经在VD下运行过这个完全相同的项目,从来没有调试器不附加的问题。
6条答案
按热度按时间icnyk63a1#
我遇到的问题与我的web.config中有一个标记包围了我的标记有关。这显然会导致调试器附加,然后立即出错,没有任何警告或错误。下面是我用来解决这个问题的文章:
htrmnn0y2#
Web应用程序在您的网站根目录和在您的虚拟目录是完全相同的吗?
行为差异可能是由于网站项目的调试设置不正确造成的。不同的调试方式有一些特殊的选项。其中之一是即时附加调试器并等待外部调用网站(这是您可能需要的)。
web.config和IIS配置之间的差异也可能是不同行为的原因。
zour9fqk3#
我会尝试使用管理员帐户运行Visual Studio。
cgfeq70w4#
我在Visual Studio中使用这个宏,我把它连接到Visual Studio中的一个快捷键上。它基本上做了适合你的事情,用调试器附加到w3wp.exe上。
我也遇到过类似的问题,有时候自动附加功能并没有完全按照我预期的方式工作。对我来说,这是一种享受。我也不喜欢Internet Explorer自动启动,因为我通常在Firefox中测试。所以这个宏不会触发Internet Explorer自动启动,这是我喜欢的。
mrwjdhj35#
还有另一个原因有同样的恶劣行为。
如果您的解决方案包含多个网站项目,则Visual Studio将启动所有这些项目,即使您仅将其中一个网站项目设置为启动项目。但是,Visual Studio将仅附加到您已配置为启动项目的网站。
也可以将解决方案配置为具有多个启动项目。如果您将解决方案配置为Visual Studio将启动所有网站项目,则最终将出现与上述相同的情况,即:每个网站项目都有一个正在运行的dev-webserver -但还有一个额外的优点,即VisualStudio连接到所有的webserver。
ezykj2lf6#
选中复选框选择来自所有用户的所有进程在窗口左下角的“连接到进程”中选择w3wp.exe