zoukankan      html  css  js  c++  java
  • Delphi编写组件封装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

      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的组件服务注册后可以看该组件的接口的方法


    6.还有asp页面和组件间传递参数,其实就是给调用的方法(函数)传递参数,注意Delphi里定义的时候要和vbs 的数据类型一致。这些还是大家多实践吧。这里主要是想大家学会封装asp核心代码的方法,起个抛砖引玉的作用。

  • 相关阅读:
    mybatis做like模糊查询
    mysql带有子查询的like查询
    form表单提交,后台怎么获取select的值?后台直接获取即可,和input方式一样。
    Spring MVC 向页面传值-Map、Model和ModelMap
    JavaWeb登录、注销、退出、记住用户名和密码
    EL表达式多条件或判断用法
    三级分销会员一次查询出来的SQL语句
    mysql 中合并查询结果union用法 or、in与union all 的查询效率
    关于取List中的指定几条数据以及注意事项
    BoxedApp Packer 将您的原始应用“打包”成单个完全的可执行二进制文件
  • 原文地址:https://www.cnblogs.com/liangqihui/p/244067.html
Copyright © 2011-2022 走看看