在调试.net程序中,可以有asp程序,可能要进行联合调试.以下是调试的方法.
1.在IIS中站点下,应用程序配置,配置,打开启用asp服务器端脚本调试.
2.先在浏览器中访问过需要调试的文件
3.打开VS2005,调试->附加到进程 选择用户名为 IWAM_计算机名 的 dllhost.exe(也有可能是w3wp.exe)
4.在vs2005中设定程序断点.
5.进入打开的web页进行刷新,就可以开始调试了.
(或者然后在IIS里面运行页面,注意不是在VS里面运行)
详细设置如下:
先打开“Internet 信息服务(IIS)管理器”,找到要开启服务端脚本调试的网站,进入属性页,进入“主目录”选项卡,点击“应用程序设置”中的“配置”,进入应用程序配置,进入“调试”选项卡,选中“启用ASP服务端脚本调试(E)”,确定即可。
配置完IIS之后,就需要用VS2005来调试程序了。当然安装VS2005是必须的步骤,这里就不多说了。
使用VS2005调试ASP程序可以在两种情况下使用,一是程序出错时调试,一是手工加载调试。
如果想在ASP程序出错时才用VS2005进行调试,那么可以在装完VS2005之后直接测试ASP程序,如果程序出现错误,会自动提示是否使用VS2005进行调试。
一个测试ASP程序,a=1,b=0,因此会有除0的错误,提示是否使用VS2005调试,选择是,使用新实例,如果已经打开了VS2005,则也可以直接用已经存在的实例来调试
错误信息,可以选择中断或者继续
中断,光标停在出错行,下部用红框标出的是变量监视窗口,可以查看当前上下文中的变量
另一种情况是在还没出错的情况下进行调试,这时需要先在浏览器中访问过需要调试的文件,因为这样ASP代码才会载入内存,然后打开VS2005,选择菜单中“调试->附加到进程”,然后选择dllhost.exe,如果在进程列表中没有找到dllhost.exe,可能是因为你还没有运行过ASP程序,我在测试的时候发现有两个dllhost.exe,可以从用户名发现一个是用户的,一个是系统的,选择的时候选用户的就OK了,还有一点要说明的是,在IIS6.0里面到附加到的进程相信不是dllhost.exe,应该是w3wp.exe,这个有待实践去检验~(补充:然后选择w3wp.exe,如果在进程列表中没有找到w3wp.exe,可能是因为你还没有运行过ASP程序。)
补充:在WINDOWS XP 下调试设置区别:vs2005->调试->附件到进程 选择的是dllhost.exe(用户名为IWAM_计算机名).
在VS中设置好断点,这个我就不多说了(选中一行,F9就行),
然后在IIS里面运行页面,注意不是在VS里面运行,平时的F5,CTRL+F5就不能用啦~
现在就可以使用VS2005来调试ASP程序了,相信这会在ASP程序开发过程中给大家带来很大的方便。
这时可以在左边看到内存中存在的脚本文件,可以选择要调试的文件打开,然后进行下断点之类的操作,从下图可以看出,我下了个断点在a=1,运行时程序停在了a=1这一行。
如果没有看到脚本资源管理,可以用菜单“调试->窗口->脚本资源管理器”来打开,或者使用快捷键Ctrl+Alt+N。
至此,我们就可以使用VS2005来调试ASP程序了,相信这会在ASP程序开发过程中给大家带来很大的方便。