我用ISAPI做了一个留言本,用INTERBOB调试成功,但用IIS却不行!(100分)

  • 主题发起人 主题发起人 bluebob
  • 开始时间 开始时间
B

bluebob

Unregistered / Unconfirmed
GUEST, unregistred user!
数据存储方式我采用文本文件 存储在SCRIPTS/

用INTERBOB调试成功,但用IIS却不行
显示如下:

Internal Server Error 500

--------------------------------------------------------------------------------
Exception: EInOutError
Message: File not found

 
请发给我sheepishest@china.com
呵呵,学习学习。
 
把主目录中的执行许可一向置为可执行
 
源码在这

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, HTTPApp;

type
TWebModule1 = class(TWebModule)
procedure WebModule1infoAction(Sender: TObject; Request: TWebRequest;
Response: TWebResponse; var Handled: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;

var
WebModule1: TWebModule1;

implementation

{$R *.DFM}

procedure TWebModule1.WebModule1infoAction(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
var
html:string;
Output: TextFile;
Counts:integer;
begin
Assignfile(Output, 'guestbook.txt');
Append(output);
for counts:=0 to Request.ContentFields.Count-2 do
begin
Write(Output, Request.ContentFields.Strings[counts]);
Writeln(Output,' ')
end;
Writeln(Output,'---------------------------------------------');

CloseFile(output);
html:='';
html:=html+'<html><head><title>谢谢!</title></head><body bgcolor="#CCCCFF">您的留言如下';
html:=html+'<pre>您的姓名: '+Request.ContentFields.Values['yourName']+'</pre>';
html:=html+'<pre>电子邮件: '+Request.ContentFields.Values['email']+'</pre>';
html:=html+'<pre>留言: '+request.ContentFields.Values['contents'] +'</pre>';
html:=html+'</body></html>';
Response.Content :=html;

end;

end.
 
 IIS执行ISAPI的DLL文件确实是有问题,有的DLL文件不能加载
成功,可以换个WEB Server,我使的是Ohttpd2.6,这个非常的好
使,功能一点不比IIS差,唯一的缺点是不支持ASP!优点是安
装、配置非常的简单、易用。
 
mrzj:
我不是为了玩才做留言本,是要用的。
 
看样子你是认准IIS了,你到我网站来看看(http://zhaojun.net),服务器软件用的是ohttpd,用的方法是ISAPI。
你是用NT还是win98,如果是win98换成NT试试。
如是NT查看一下SCRIPTS目录有没有写入权限。
你写程序没什么问题。
 
大家回答啊!
 
接受答案了.
 
后退
顶部