kenlistian

勤学多思

  IT博客 :: 首页 :: 新随笔 ::  :: 聚合  :: 管理 ::
  412 随笔 :: 0 文章 :: 23 评论 :: 0 Trackbacks

IntraBob——调试CGI/WinCGI/ISAPI程序的利器

IntraBob是资深程序员Dr.Bob编写的,用于测试Delphi/Cbuilder编写的CGI/WinCGI/ISAPI程序。调试本地的 CGI/WinCGI/ISAPI程序,其原理是模拟PWS/IIS接受WWW请求,并根据类似于“http: //www.123.com/testisapi.dll”的URL映射到本地文件,如“d:\intrabob\demo\TestISAPI.dll”。

IntraBob下载在 http://www2.drbob42.com/drbob42/intrabob.zip解压在“d:\intrabob\”,调试的ISAPI位于文件夹d:\intrabob\demo\”下。

一、先编写调用页

 要一个页面用于向ISAPI程序传递参数,用户输入姓名、性别、省份,用户提交后将这三个参数给http://www.123.com/testisapi.dll 用于显示。其HTML代码如下:

< HTML >
< HEAD >
< TITLE >IntraBob调试ISAPI< /TITLE >
< /HEAD >
< BODY >
< H2 >用IntraBob调试ISAPI< /H2 >
< HR >
< FORM ACTION=“http://www.123.com/
testisapi.dll" METHOD=“POST" >
< br >姓名:< INPUT TYPE=“text" NAME=“Name" 
SIZE=“40" value=‘王发军' >
< br >性别:< INPUT TYPE=
 “radio"NAME=“Sex"value= ‘男'
checked>男 < INPUTTYPE=“radio"NAME=“Sex" value=‘女' >女
< br >省份:< Select Name=Province >< Option >河南
< /Option >< Option >河北< /Option >< /Select >
< br >< INPUT TYPE=“SUBMIT" VALUE=“提交测试ISAPI" >
< INPUT TYPE=“RESET" VALUE=“重新填写" >
< /FORM >
< /BODY >
< /HTML >
粘贴以上页面建一html文件保存。(这里放在“D:\INTRABOB\demo\testisapi.htm”)
二、写ISAPI程序

  写一个ISAPI程序,接受姓名、性别、省份三个参数并将其显示出来。

 (1)建立Web Server Application工程文件
 
(2)在WebModule1中增加一个WebActionItem1,在其OnAction事件中写下如下代码:

procedure TWebModule1.WebModule1WebActionItem1Action
(Sender: TObject;Request: TWebRequest; Response: 
TWebResponse; var Handled: Boolean);
var
   Name,Sex,Province : string;
begin
   Name := Request.ContentFields.values[‘name'];
     Sex := Request.ContentFields.values[‘Sex'];
 Province := Request.ContentFields.values[‘Province'];
   Response.Content := ‘您的输入如下:';
  Response.Content :=   
  Response.Content+姓名:'+name;
  Response.Content :=   
  Response.Content+性别:'+sex;
  Response.Content :=   
  Response.Content+'省份:'+Province;
   Response.Content :=  Response.Content +'';
end;
(3)存到文件夹“d:\intrabob\demo\”下,工程文件为TestISAPI.dpr。 
(4)生成ISAPI的TestISAPI.DLL。

三、用IntraBob5.0调试

 1. 先在IDE中Run|Paramters中设置“D:\INTRABOB\Intrabob.exe”,如图:

 2.调试

  run后弹出IntraBob.exe的地址栏中输入testisapi.htm路径及名称,如图:

 3.设置IntraBob选项

    选择“Options”页,IntraBob已从testisapi.htm页面中提出URL http://www.123.com/testisapi.dll”在“Remote URL”栏,这里只需要将“Local App”栏指定为“d:\intrabob\demo\TestISAPI.dll”即可。
  

  返回到 “Browser”页,点击页面“提交测试ISAPI”按钮来提交已输入的数据。我们的IDE的代码窗口激活,程序就能进入设置的断点处。
  运行到结束,IntraBob将输出结果以“D:\INTRABOB\output.htm”的形式显示在“Browser”页中。这样 在本机上调试 CGI/WinCGI/ISAPI程序就不必用IIS了。

 

 

 

posted on 2007-04-06 15:56 kenlistian 阅读(679) 评论(1)  编辑 收藏 引用

评论

# re: 收录调试CGI/WinCGI/ISAPI程序 2008-03-05 17:22 kenlistian
现在看,用delphi调试都忘光了。  回复  更多评论
  

只有注册用户登录后才能发表评论。