Web服务器应用程序建立后如何调试?(是不是没有人搞得定了?????) (100分)

  • 主题发起人 主题发起人 知足者
  • 开始时间 开始时间

知足者

Unregistered / Unconfirmed
GUEST, unregistred user!
1.Web服务器应用程序建立后如何调试,将程序生成到/Inetpub/scripts目录下以后
可以实现预期的效果,但无法进入TWebActionItem的OnActive事件。
2.Delphi中有没有封装了Http协议的控件,意思是指不通过Web Server,可以直接
传递信息。

问题分值先定为100分,有具体解决方案的话,可以再加
 
关注!踢一脚![:D]
 
怎么没有人回复,是不是闲分少了,可以加到150分
 
listening.....
 
OnActive事件的路径设了吗???

具体说一下
 
to 知足者
能不能说得详细一点?我用ISAPI出来的是DLL,RESPONSE.CONTENT来显示,
不知道和你的意思是否一样?
 
OnActive的路径设了。
如果启动程序,可以调试一次(即可以进入OnActive事件),
但如果实时调试时,无法进断点(即在Web浏览器输入请求后),不知小枫兄有和高见
 
没看明白:<
 
starkbl兄,你的ISAPI的Dll可以在客户端浏览器向WebServer应用程序发起请求时,即在
浏览器中输入URL后,你的DLL可以调试吗,是不是可以到对应的OnActive的事件中去。
 
我还是不明白你的意思:<
当客户端向服务器提出请求的时候不就是调用相应ITEM的onactive事件吗?
如果你指的是你不能编译了提示错误如下:
could not create output file 'XXX.dll'
这个我知道,但这个是在IIS里面的一个设置引起的啊


 
你可以通过宿主程序激活你的应用,进入断点调试
 
能不能说得详细一点啊

GZ
 
starkbl兄:teclick兄已经明白了我的意思,你可以看一下他的意见,我的意思是说
假如说有一个Web浏览器的请求发出,WebServer响应并将请求传入WebServer应用程序的
OnActive事件,这个时候我不能进断点,也就是说我不能调试OnActive事件
teclick兄:宿主程序是IIS,不知你有什么方法可以让它激活WebServer的应用程序,我想
它也是要客户(Web浏览器)请求才触发的
 
请参考李大师关于web编程方面的资料那里有。如果叙述需要些很多文字:)
 
web服务器程序的调试可下载软件INTRABOB.EXE,在delphi中load入INTRABOB.EXE,并在active
事件中设断点调试。我写的整个delphi-web站点都是这样搞出来的。[:)]
 
tigerricky兄你讲的INTRABOB.EXE哪里有?
teclick兄你讲的李维的书名叫什么?
 
to 知足者兄
关于ISAPI缓存的可以在IIS里面设置,非常简单
就在主目录/配置里面,我上次说得也是这个问题
关于INTRABOB我今天也找到了,但是还不会用,可以在http://www.drbob42.com/下载的
我调试一般都是直接编译,因为不知道怎么设置断点,去掉缓存之后随时都可以编译的,也很方便

to tigerricky兄
能不能请你说明一下怎么用INTRABOB我照着他网站上的说明做了一下没有成功:<
 
tigerricky兄INTRABOB的用法
 
我先声明一下,你得有WEB服务器。(用NT的IIS或WIN98的WEB PERSONAL SERVER)。首先你在delphi中把你写的ISAPI程序的OUTPUT路径设定到
你可以运行的WEB服务器上的路径。D:/Inetpub/wwwroot--(如果:你的IIS上设定D:/Inetpub/wwwroot为你主机的默认WEB站点,http://yourhostname/)
然后在ISAPI程序的RUN-》PARAMETER中LOCAL的HOST APPLICATION中输入你的完整路径的INTRABOB.EXE。按OK。则完成了调试的准备工作。
然后你在ISAPI的ACTION中设定好断点。运行程序。则你可以看到INTRABOB.EXE启动了。然后你在INTRABOB.EXE的地址栏输入
http://yourhostname/project1.dll选INTRABOB.EXE下面的OPTION栏,可看到REMOTE URL:http://yourhostname/project.dll,
local app:project.dll,INTRABOB.EXE已把你的ISAPI程序的运行信息GET了回来。接着你在INTRABOB.EXE的地址栏再次输入:
http://yourhostname/project1.dll回车,则程序就会在你所设定的断点处停下来。
如果你的下一个ISAPI程序需要由本ISAPI程序调用,你可以通过设定INTRABOB.EXE下面的OPTION栏中的REMOTE URL,local app,pathinfo
在地址栏中输入下一个ISAPI的地址来调用调试。(写得好累啊!)不知你明白没有。


 
接受答案了
 
后退
顶部