当前位置: 首页 > 图文教程 > 网络编程 > ASP > Delphi编写组件封装asp代码的基本步骤

ASP
用XML数据岛解决用户界面问题 - 1
用XML数据岛解决用户界面问题 - 2
用XML数据岛解决用户界面问题 - 3
关于ASP中堆栈溢出错误的解决
运用asp结合vbscript模拟股票滚屏
如何在VC++ 编写的组件中使用 ADO
VBSctipt 5.0中的新特性
ASP.NET中使用多个runat=server form
ASP.NET中的XML表单控件
页面之间传递元素的办法
转换文本为超联和Email格式的代码
vbscript和javascript互相调用
用VB6创建MTS组件
连接各种数据库的代码的总结
数据排序及如何动态排序
将HTML表单数据存储为XML格式
关于打印页面的一些经验
用vbscript判断email地址的合法性
可以近视替代remote script的代码
利用MSCHART画图的一段代码

ASP 中的 Delphi编写组件封装asp代码的基本步骤


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 83 ::
收藏到网摘: n/a

 

   如果你想脱离asp爱好者的水平,那么你就应该学会为asp编写组件。我在google上搜索了一下,Delphi编写asp组件的文章一共就几篇,所以今天写了这篇Delphi编写asp组件的基础文章,希望对新手有点帮助。

    开始吧,让我们一起编写一个”hello world!”的示例。我这里用的是Delphi 7。

    1.文件->新建->其他->ActiveX->ActiveX Library,然后保存成showdll.dpr



2.再次,文件->新建->其他->ActiveX->ActiveX Server Object,填写CoClassName:showhello,其他不变,点击ok。


3.现在开始写程序,先添加一个方法。选择Ishowhello->右键->New->Method,填写方法名称:sayworld。


4.现在开始写程序,将Unit1保存成show.pas,然后添加方法sayworld的代码


show.pas的全部代码如下:

unit show;

 

{$WARN SYMBOL_PLATFORM OFF}

 

interface

 

uses

  ComObj, ActiveX, AspTlb, showdll_TLB, StdVcl;

 

type

  Tshowhello = class(TASPObject, Ishowhello)

  protected

    procedure OnEndPage; safecall;

    procedure OnStartPage(const AScriptingContext: IUnknown); safecall;

    procedure sayworld; safecall;  //sayworld方法

  end;

 

implementation

 

uses ComServ;

 

procedure Tshowhello.OnEndPage;

begin

  inherited OnEndPage;

end;

 

procedure Tshowhello.OnStartPage(const AScriptingContext: IUnknown);

begin

  inherited OnStartPage(AScriptingContext);

end;

procedure Tshowhello.sayworld(); //定义sayworld方法

begin

 response.Write('Hello world');   //里边的语法和asp一样的写法了,就在这里封装了。

end;

 

initialization

  TAutoObjectFactory.Create(ComServer, Tshowhello, Class_showhello,

    ciMultiInstance, tmApartment);

end.

4.点击运行,编译成dll, 并自动注册了。这时候会提示:


让你放到web服务器上运行,好了现在写个asp文件调用一下吧,注意Delphi已经生成了一个asp文件,我们改一下调用的方法就可以了。


修改后的showhello.asp代码如下:

<HTML>

<BODY>

<TITLE> Testing Delphi ASP </TITLE>

<CENTER>

<H3> You should see the results of your Delphi Active Server method below </H3>

</CENTER>

<HR>

<% Set DelphiASPObj = Server.CreateObject("showdll.showhello")

   DelphiASPObj.sayworld

%>

<HR>

</BODY>

</HTML>

在iis的站点下运行看看效果吧:


5.其他:

Delphi编写的组件,用win2000的组件服务注册后可以看该组件的接口的方法