如何在IIS中发布websnap程序(200分)

  • 主题发起人 主题发起人 hyj
  • 开始时间 开始时间
H

hyj

Unregistered / Unconfirmed
GUEST, unregistred user!
大家好,我最近在学习WEBSNAP但做的程序只能在Web App Debugger中测试.
不知道如何发布到IIS中,望各位不吝赐教!
 
新建一个Web Snap Application,选择编译成为ISAPI/NSAPI(其它如CGI_Stand或WIN_CGI也行)的,但我们以此为例,把你原来使用Debug成功的文件全部Add,然后编译就可得到可以发布的文件。

一、发布开发好的程序应当把Delphi生成的.html文件和.dll或.exe一同发布,否则会提示相关的文件(.html)无法找到

2、在发布的机器上出现如下错误时
Internal Application Error
Object factory for class TWebResponseWrapper missing 应当使用Delphi的tregsvr.exe(在Bin目录)在目标机器上注册 stdvcl40.tlb和WebBrokerScript.tlb这两个文件

3、使用IIS管理器将保存ISAPI程序的虚拟目录权限改为执行

使用WEB Snap开发的程序在编译成WIN_CGI时总是出错, 但编译成为StdCGI或ISAPI就不会出错,这个我不知道原因。

下面是一些我的个人体会:
1、在创建ASP对象的文件中加入<% On Error Resume Next %>可以让ASP网页执行完而不会因错误停止。这样有利调试当然,这样做如果程序有错误也不会在IE中显示任何错误的提示。

2、当你修改了Project的名称后(MTS开发中),可能会出现如下错误的提示:"progID 错误",这是因为Delphi生成的ASP文件中Set DelphiASPObj = Server.CreateObject("MTSObjTest.MTSObjTest"),中这个字符串MTSObjTest是Project文件名称的原因.当修改了Project名称后对象名称发生了改变的原因

3、当你写的ASP对象(执行在IIS进程中(dllHost.exe))无法释放时,可以重新启动IIS而不是重启机器。

4、目前没有好的方法调试Delphi开发的ASP对象。最好把它的方法在Exe中调试好。

5、microsoft script dubeger 可以在Running Documents窗口中加入需要调试的ASP页面。如果你是在自己的机器上开发,那么可以在IIS管理器中设置“服务器端脚本调试”(详细的信息使用Google搜一下“ASP调试”)但是使用了Response.ReDirect进行过定向的页面则不能加入?!

6、在IE选项的高级中把“显示每个脚本的错误通知”打上勾,“显示友好HTTP错误信息”的勾去掉,否则IE只会提示“服务器内部错误”

 
UP一下吧。
 
为何将Web App Debugger编译成STAND CGI时一直提示"NO DISPATCHER COMPONENT FOUND ON DATA MODULE" 而在Web App Debugge下可以正常运行,难道web datadmodule 一定要
加DISPATCHER 吗?
 
为何将Web App Debugger编译成STAND CGI时一直提示"NO DISPATCHER COMPONENT FOUND ON DATA MODULE" 而在Web App Debugge下可以正常运行,难道web datadmodule 一定要
加DISPATCHER 吗?
 
大家拿分吧!
 
后退
顶部