调试一个 IIS 应用程序的方法和调试任何其他的 Visual Basic 应用程序一样,都是通过从 Visual Basic 进入运行模式来进行的。Visual Basic 在运行时加载 webclass,如果需要的话,创建运行应用程序.asp 文件的虚拟根,并用一个对.asp 文件的 HTTP引用启动系统缺省的浏览器。接着,.asp 文件又启动 webclass。
注意 虽然通过从浏览器的“文件”菜单中打开文件,您可以在浏览器中查看与应用程序相关的.htm 文件,但这不是调试您的应用程序。您必须使用 Visual Basic 的“启动”选项进入调试态。
当调试时,您可以使用全部的 Visual Basic 开发环境。能够使用 Visual Basic 的所有工具,设置断点、查看变量、调试语句等来调试您的工程。
在您调试时,Visual Basic 提示您,它将为您的工程创建一个虚拟目录。虚拟目录是一个在您的 Web 服务器主目录之外的目录,对于浏览器来说,它象主目录的一个子目录。它允许您从主目录结构之外的目录将内容发布到 Web。您不能更改 Visual Basic 为 webclass 创建的虚拟目录的位置。
“工程属性”对话框的“调试”窗格中的设置值确定了当您进入运行方式时,系统是否等待您告诉它做什么,或自动地开始您指定的 webclass。当您选择自动地开始 webclass 时,Visual Basic 启动 Internet Explorer、漫游到应用程序的 URL、并激发 webclass 的 BeginRequest 事件。
当 Visual Basic 离开运行方式时,它删除所有的临时文件。另外,它破坏 Webclass 设计器的实例,并重新启动设计模式的设计器。
详细信息 关于如何测试和调试 IIS 应用程序的详细信息,请参阅《程序员指南》的第十三章,“调试代码并处理错误”。
您可以在 IIS 应用程序中使用 Visual Basic 的错误处理特性来捕获错误并纠正它。当一个错误发生时,Visual Basic设置错误对象 Err 的各种属性例如一个错误号或一个错误描述。您可以使用 Err 对象和它在一个错误处理子程序中的属性来使您的应用程序能够对一个错误情况智能地响应。
除了标准错误处理外,IIS 应用程序还允许您使用两种专门的特性来处理错误:
详细信息 错误处理的基本知识在《程序员指南》中的第十三章“调试代码并处理错误”中讨论。关于针对 ActiveX 工程的详细信息,请参阅《部件工具指南》第七章“生成代码部件”中的“产生并处理 ActiveX 部件中的错误”。
在调试过程中您可以使用 Trace 方法来帮助识别错误,并跟踪性能和统计数据。Trace 方法发送一个指定的字符串到 Win32 OutputDebugString API,然后能够将该字符串俘获到一个适当的调试工具如 DBMON 中。
使用 Trace 方法允许您在服务器计算机上调试产品并记录有用的信息,例如关于应用程序执行的信息、发生的错误信息、和其他您需要的信息。
详细信息 关于在您的错误处理中使用这种方法的详细信息,请参阅《语言参考》中的“跟踪错误”。
webclass 上的一个致命错误是应用程序不能从其中恢复或还原适当的 webitem 错误。例如,一个致命的错误可能是一个 webclass 事件中未处理错误、或是一个结构错误、或是在运行时 DLL 中一个未预料到的错误。在这种错误发生后,webclass 运行时激发 FatalErrorResponse 事件,终止应用程序并破坏 webclass 的实例。
当一个致命错误发生时,应用程序可以在 FatalErrorResponse 事件的处理程序中向 Response 对象写一个信息。这个信息可以是您写的,也可以是与 webclass 相关的.asp文件的缺省信息。要写您自己的信息,请使用 Response 对象,然后设置 FatalErrorResponse 事件的 senddefault 参数为 False。要使用缺省的错误信息,设置 senddefault 参数为 True。
注意 webclass 运行时提供一个只能在 FatalErrorResponse 事件中使用的 Error 属性。这个属性返回一个对象,来描述引起 webclass 终止的错误。
Webclass 运行时也向NT事件日志记录致命的错误。在Windows 95系统中,运行时 DLL 在Windows 目录下创建一个日志文件并在那里记录错误。
详细信息 关于处理不可恢复错误的详细信息,请参阅《语言参考》中的“FatalErrorResponse 事件”。