Kylix 与Webmail(100分)

N

nkczx

Unregistered / Unconfirmed
GUEST, unregistred user!
有没有谁用Kylix作过Webmail的程序?
请指导
 
你要做server还是client?
 
client and server
 
可参考Delphi下Internet编程的方法
但的先熟悉smtp和pop3协议
E-mail:?
我发一个例子给你
 
接受答案了.
 
我正准备做,但遇到一难题:
我用Kylix开发Linux下的Web应用(Apache Module)
在Apache加载后重启Apache报错,没找到libhttpd.so文件。我翻遍了整个硬盘都找不到那文件。
我用的Apache是TLS6.5自带的,所以找来最新源码包重装Apache后还是没能发现libhttpd.so
查看kylix的Src发现httpd单元使用了libhttpd.so
libhttpd.so的作用等同win32下的ApacheCore.dll
请问哪位高手有此文件,help me!!!!!!!!!!!!!!
开发Apache Module过程如下:
随着Internet 的飞速发展,动态网页的开发方法五花八门,有ASP,JSP,PHP,CGI
等等,其中web server主要集中在IIS,Apache等上,MS 的IIS 以其强大的功能吸引了很多的开发者,ASP 是IIS上用的最多的网页开发方法,可是ASP 对开发非MS 产品的数据库程序时,简直就是一场恶梦,同时IIS 的漏洞越来越多,系统管理员每天都得注意最新的漏洞补丁,否则不是被黑客攻翻就是被病毒感染,最近的uecode,nimda就是例子。
具有速度快,安全性好,跨平台而且是完全免费的apache http server吸引了越来越
多的开发者,而borland 新推出的delphi6 开始支持Apache,功能强大的delphi 和 快速安全的apache 是一对非常好的动态网站开发方式,而且delphi6 的工程源码几乎不用动就可以用kylix 编译,并在lunix 下的apache 上运行,厉害吧,动手吧,让
我们开始做一个简单的网页吧!
1.环境设置
先从http://www.apache.org 上下载apache http server for windows 版,最新的版本是1.3.22,然后安装到服务器上,调试阶段最好现在本机上安装,反正apache 支持win9x:),安装完毕后,在IE里面输入http://localhost,会正常显示apache 默认页,说明安装成功!
2.现在打开delphi6 ,点菜单file-new-other,在new页里面选web server
aplication,出现下面图片选择Apache shared Module(DLL),系统就会建立一个空的工程.把工程另存为test,unit1另存为wmp.pas.delphi 就会生成以下的工程代码
library test;
uses
WebBroker,
ApacheApp,
wmp in 'wmp.pas' {WebModule1: TWebModule};
{$R *.res}
exports
apache_module name 'Project1_module';
begin
Application.Initialize;
Application.CreateForm(TWebModule1, WebModule1);
Application.Run;
end.
把'Project1_module' 改为'test_module'
然后在applicaiotn.Initilize 后面加入一下代码(很重要),
ModuleName:='test_module';
ContentType:= 'test-handler';
以上是让apache 加载dll是用的,如果与apache 的配置不一样的话,是无法运行的.
然后设置WebModule1的name 为wm(这仅仅是为了以后编程简单^_^),
打开wm的actions,出现一个editing wm.actions窗口,点击add new,出现一个新的
item,
设置其name 为index,pathinfo 为/index,default 为true,
然后到events 页双击onaction
code editor出现一下代码:
procedure Twm.wmindexAction(Sender: TObject;
Request: TWebRequest;
Response: TWebResponse;
var Handled: Boolean);
begin

end;

加入一下代码
procedure Twm.wmindexAction(Sender: TObject;
Request: TWebRequest;
Response: TWebResponse;
var Handled: Boolean);
const
chweek:array [1..7]of string[2]=('日','一','二','三','四','五','六');
var
s:string;
yy,mm,dd:word;
begin
decodedate(date,yy,mm,dd);
s:='今天是'+inttostr(yy)+'年'+inttostr(mm)+'月'+inttostr(dd)+'日';
s:=s+' 星期'+chweek[dayofweek(date)];
s:=s+'nt> 欢迎你访问delphi窑洞!';
Response.content := s;
end;

end;

OK! 编译,如果按F9 会出现错误!(因为它是个DLL呀!)
把编译出来的test.dll 拷到apache 目录下的modules目录
然后用文本编辑器打开apache 目录下的conf目录里面的httpd.conf
最上面加入一下文本
LoadModule test_module "C:/Program Files/Apache
Group/Apache/modules/test.dll"
<Location /test>
SetHandler test-Handler
cation>
如果httpd.conf 里面的ClearModuleList 前面没有# 的话,一定要加上!!!!
现在先stop apache server,然后再start apache server
在IE 里面输入http://localhost/test
怎样出来了吗?
浏览器里面是不是显示
今天是2001年10月30日 星期二 欢迎你访问delphi窑洞!
如果你看到这样的话,那么你成功了!
还算简单吧!
 
顶部