众所周知,ASP技术是我们在以internet/intranet为平台的web程序的主要技术,在asp应用程序中我们一般使用vbscripts和javascripts两种脚本语言。但是脚本语言是一种非编译的语言,其所开发的web程序存在先天的安全性、执行效率扩张性方面的问题,因此我们一般在开发web系统时用高级语言编写asp执行体,然后用脚本语言作为连接代码去调用asp执行体执行存取。在这方面由于asp技术是微软推出的,因此我们一般利用vb或vc,那么delphi程序员又如何实现呢?
在这方面笔者最近通过inrpisre的资料,实现了在delphi环境中实现asp技术的web编程,现以一个介绍如下:
1、在delphi环境中建立一个新的acdiveX DLL项目Project1,然后通过delphi的Active Server Object建立一个ASP对象,在他的coClassName中填入所建立对象的名字MyAspObject.
2、通过type Library为刚建立的MyAspObject对象建立一个将要被脚本语言调用的方法MyAspRequest.
3、由于刚才所建立的ASP对象是从TASPObject继承的,应此我们在方法建立中可以直接使用asp对象,现在为我们建立的Asp对象填写代码如下:
produce TMyAspObject.MyAspRequest;
begin
repsonse.write('<p您的姓名是:');
repsonse.write(request.form.item['Name']);
repsonse.write('</p');//从所要建立的网页中读出用户名//
repsonse.write('<p您的工作是:');
repsonse.write(request.form.item['work']);
repsonse.write('</p');//从所要建立的网页中读出用户工作//
repsonse.write('<p您用的开发工具:');
if(request.form.item['delphi'].count0)
repsonse.write('delphi');
if(request.form.item['bcb'].count0)
repsonse.write('c++ Builder');//判断用户所用的开发工具//
repsonse.write('</p');
repsonse.write('<p您的身份:');
repsonse.write(request.form.item['Identity']);
repsonse.write('</p');//读出用户的身份//
end;
4、对程序进行编译并在delphi中进行注册为PMyAspObject.dll文件。
5、编写用于连接的ASP脚本语言文件MyAsp.asp
<%@language=jscript %
<HTML
<BODY
<title这是一个用delphi建立的ASP对象</title
<center<h3你填的内容如下</h3</center
<%
var myasp;
myasp=server.createobject(PMyAspObject.MyAspObject);
//生成连接对象//
myasp.MyAspRequest();//调用自己定义的ASP对象//
%
</body
</HTML
6、建立用于显示的网页Myhtm.htm
<form action='localHost/shd/myasp.asp' method='post"
<h1 align='center"请选择</h1
<P姓名:<input type='text' size=33 name="name"</p
<P工作:<input type='text' size=33 name="work"</p
<P开发工具:<input type='checkbox' name='delphi' value="on"delphi
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/delphi/)<input type='checkbox'name='bcb'value="on"c++ Builder</p
<p您的身份:</p
<p<select name="identity" size="1"
<option学生</option
<option技术人员</option
</select</p
<p<input type="submit" name="mysubmit" value="递交"
</form
(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/delphi/)7、然后把Myhtm.htm和myasp.asp放在个人的web服务器中的shd目录下即可浏览测试。
网页效果图
ASP效果图
以上程序的pwin98 ME和delphi5.0 Enterprise中实现。