加入收藏 | 网站地图 | | RSS | WAP
你好,游客 登录 注册 搜索

使用IIS4.0调试应用程序

[日期:2001-01-05] 作者:青苹果工作室 来源:yesky [字体: ]

概述

  现在,IIS4.0使你能够调试用Java写的Global.asa文件、 .ASP文件、 .cdx文件以及ActiveX组件。而对于IIS 3.0,调试通常意味着输入Response.Write 语句,以向浏览器发送必要的信息来确定脚本的错误。使用IIS 4.0 和Internet Explorer 4.0携带的新Microsoft Script Debugger,使调试客户端和服务器端的脚本成为可能。本文概述了在开始使用ASP调试器时你需要了解一些什么。

  ASP要求有一个应用程序(一个标记为应用程序的虚拟路径)来支持调试,这就是说你必须创建一个应用程序。创建一个应用程序还有一个好处,那就是可以告诉ASP Global.asa文件在哪里,以及为你的应用程序设置一个入口。

  为了创建一个应用程序,你需要在IIS管理控制台创建一个新的虚拟路径:

1、在树型图上右击Web 站点图标,打开属性页。

2、选择创建按钮,创建应用程序并键入应用程序的路径。



图1:在IIS管理控制台创建一个新的虚拟路径


成功地激活调试

为使性能达到最佳,在默认状态下,基于ASP的应用程序中调试是未被激活的。永远不要为一个正在生产中的应用程序激活调试,这指的是正在为别人使用的站点。

1、为了激活调试,在应用程序的属性页点击配置按钮。

2、在应用程序调试标签下,选择激活ASP服务器端脚本调试复选框。要注意这是列出的第一个复选框。不要选择第二个复选框,这是为以后预留的。

3、在两个对话框中点击OK,保存应用程序的设置。

现在我们已经设置了调试,以下是一些有用的调试方法:

1、使用你的浏览器,从你的应用程序中请求任何.asp 文件。

2、从开始菜单,选择Microsoft 脚本调试器。

3、脚本调试器启动后,运行文档窗口就会显示。如果它没有显示,就从视图菜单中选中运行文档。在运行文档窗口中,ASP将作为一个条目出现。

4、在ASP条目下展开树型图,直到找到你所请求的.asp 文件。双击这一文件,Microsoft 脚本调试器就会显示这个.asp 文件的源文件。

5、为了设置一个断点,在你的源文件中(HTML或脚本)中点击一行,按键盘上的F9(调试断点的热键),在.asp 文件中最近的调试行现在就显示为红色背景。

6、为了击中断点,用你的浏览器请求.asp 文件。当到达设置了断点的那一行时,脚本调试器会自动地在那里聚焦。恭喜你,现在你开始调试了。在单步运行时我使用最多的热键是F8,使用它就在.asp文件中执行下一个可执行区域。


图2:Microsoft 脚本调试器

  有时,当你在一个HTML文件中设置断点时,调试器会点亮很多行。这是因为ASP是把它们作为一块发送给浏览器的,这样可以提高性能。要调试一个包含文件,可以使用单步运行或展开包括一个包含文件的.asp 文件的节点并设置断点。

  使用单步运行一个.asp 文件是有用的,但是你还需要知道如何用Command 窗口显示和设置值。如果Command 窗口还没有在脚本调试器中显示,就从视图菜单中选中Command 窗口。在这个窗口中你可以做用脚本显示值这类的工作。如果你的当前脚本语言是Visual Basic Scripting Edition (VBScript), 可以键入"? variablename(变量名)"或 "? object.propertyname(对象.属性名)"。在JScript中,你只需要键入变量名或"object.propertyname" (对象.属性名)并按回车键。这样值就显示出来了。要设置一个值,可以使用赋值语句,如x = 1 或 y = 2。在VBScript中, 你还可以使用:

Set myObj = Server.CreateObject("someobject")

  在JScript中,对象赋值语句都一样:

myObj = Server.CreateObject("someobject")


调试窍门

  以前Global.asa 文件是不容易调试的,但是现在你可以调试其中3个事件的任何一个:Application_OnStart、 Session_OnStart和Session_OnEnd。我发现编辑一个Global.asa 文件,在Application_OnStart或Session_OnStart 事件中键入Stop语句(对VBScript)或debugger语句 (对 JScript) 是最容易的。Global.asa和requested .asp文件在运行文档窗口中出现时,它们已经被运行过一次了,这时再调试Application_OnStart 事件就太晚了,因为它已经发生过了。还有,Session_OnStart 也已经被用户浏览器运行过了。但是,为Session_OnEnd 设置断点很方便,因为它到最后才执行。

  调试一个out-of-process 的应用程序与调试一个in-process 的应用程序是一样的。如果你已经在单独的内存空间(单独的程序)复选框中选中了运行,那么.asp files 文件及它所调用的组件就会在一个程序中而不是在IIS4.0 程序中运行。要在运行文档窗口中找到这个应用程序,可以展开每个ASP页的条目。一种更技巧的方法是确定应用程序的过程ID,并在运行文档窗口中找到有相对应的过程ID的ASP条目。将过程ID加入括号中作为后缀,来展开条目。

  由于脚本调试器是只读的,因此作为调试结果你想要修改Global.asa、 .asp和 .cdx 文件时,必须要使用编辑器。

  使用新的脚本调试器可以为你节省很多时间。不管发生的是编译器、系统时间还是逻辑错误,调试器都可以准确地向你显示发生了什么。Command 窗口可以帮助你确定,比如说一些变量的真实值。另外,最重要的是,一旦你结束了调试,要记得把这些功能关掉。它限制应用程序单独地处理请求,并且应用程序不再是同步的。

通过msnews.microsoft.com上的脚本调试器的新闻组,可以得到同类的支持:
microsoft.public.inetsdk.programming.scripting.debugger。

关键词:IIS  调试 

收藏 推荐 打印 | 录入: | 阅读:
本文评论   查看全部评论 (0)
表情: 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事/刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款