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

2016-01-29 17:51 72 1 收藏

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

【 tulaoshi.com - ASP 】

 

   如果你想脱离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

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/asp/)

  inherited OnEndPage;

end;

 

procedure Tshowhello.OnStartPage(const AScriptingContext: IUnknown);

begin

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/asp/)

  inherited OnStartPage(AScriptingContext);

end;

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

begin

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/asp/)

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

end;

 

initialization

  TAutoObjectFactory.Create(ComServer, Tshowhello, Class_showhello,

    ciMultiInstance, tmApartment);

end.

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


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


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

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/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的组件服务注册后可以看该组件的接口的方法

来源:http://www.tulaoshi.com/n/20160129/1503238.html

延伸阅读
标签: Web开发
一、所有的标记都必须要有一个相应的结束标记 以前在HTML中,你可以打开许多标签,例如p和li而不一定写对应的/p和/li来关闭它们。但在XHTML中这是不合法的。XHTML要求有严谨的结构,所有标签必须关闭。如果是单独不成对的标签,在标签最后加一个"/"来关闭它。例如: br /img height="80" alt="网页教学网" src="../images/Logo.gif" ...
在VCL中包含有一个TList类,几乎可以实现链表所有功能,Delphi的工程师真是伟大。但是在实际应用中需要TTree类,来实现树的功能,我写了两个类TyuTree,TYuNode。可以方便实现,树创建,结点增删、移动功能。请大家指教。代码实例:Procedure Test();Var YuTree: TyuTree;Node: TYuNode;Begin    //第1步:创建树、增加第一个结点0Yu...
标签: flash教程
1。必须安装extension manager(扩展管理器)。  2。将所有要打包的组件文件拷贝到一个“准备”区域(自定的文件夹),以便于打包。无需使所有文件位于文件夹层次结构的同一级别(您可以在MXI文件中使用<file 标记指定每个文件相对于安装文件的路径);但是,如果您不打算将文件从它们的“配置”文件夹安装位置直接打包,则...
  Delphi的组件读写机制(一) 一、流式对象(Stream)和读写对象(Filer)的介绍  在面向对象程序设计中,对象式数据管理占有很重要的地位。在Delphi中,对对象式数据管理的支持方式是其一大特色。  Delphi是一个面向对象的可视化设计与面向对象的语言相结合的集成开发环境。Delphi的核心是组件。组件是对象的一种。...
标签: ASP
  保存为runasp.asp运行。账号密码admin,登陆后输入代码就可执行了!! <% @ LANGUAGE="VBSCRIPT" % <%Option Explicit response.buffer=true dim Spassword,SUserName     SUserName="admin"     Spassword="admin" dim SQLMutiStr dim i dim action     action=request.querystr...