在delphi7中手工建立cbx的xo工程

      主要用于没有使用clxbase7集成开发环境的cbx应用开发者。

 

   1、   在普通的delphi7中建立xo首先是打开file ->new ,选择dll wizard,新建一个dll,修改,dpr的内容如下

 

library adosvr; //这个名称就是xo的名称

 

uses
SysUtils,
Classes;

 

begin

end.

 

2、然后加入xo的祖先单元uEntityRoot in '../../../CBX/Apps/Units/uEntityRoot.pas' {EntityRoot: TDataModule},代码就成了
library xodemo;

 

uses
SysUtils,
Classes,
uEntityRoot in '../../CBX/Apps/Units/uEntityRoot.pas' {EntityRoot: TDataModule};

{$E xo}

begin
end.

3、创建xo的核心模块demoxo,file->new ->other ,选xodemo页,选EntityRoot,继承这个单元,并命名为xoado,因为我要使用ado的数据连接组件,故这样命名。同时修改窗口名为demoxo ,这个名称是在ao中调用时ro组件中要设置的服务名。注意这个名称一定要记住。修改project options ,runtime packages 选择 build with runtime packages,add d:/cbx/sdk/lib/AppSvrRT.dcp ,设置search path D:/CBX/SDK/Lib ,设置 output direxctory D:/CBX/SDK/__Deploy 到这里xo的设置工作就完成了。

4、修改 xoado单元的代码

unit xoado;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uEntityRoot, HTTPApp;

type
Tdemoxo = class(TEntityRoot)
    procedure DataModuleCreate(Sender: TObject);
private
    { Private declarations }
public
    { Public declarations }
end;

var
demoxo: Tdemoxo;

implementation

{$R *.dfm}

procedure Tdemoxo.DataModuleCreate(Sender: TObject);
begin
inherited;

end;

end.
以上是生成的代码,在xo中需要进行改造,修改后的代码如下

unit xoado;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, uEntityRoot, HTTPApp;

type
Tdemoxo = class(TEntityRoot)
    procedure DataModuleCreate(Sender: TObject);
private
protected
    class function GetLocalData: TEntityLocalData; override;
public
    procedure InitEntity(SubKey: integer; Data: string); override;
end;


function GetModClass: TEntityClass;
implementation
exports
GetModClass;
var

LocalData: TEntityLocalData;
function GetModClass: TEntityClass;
begin
Result := Tdemoxo;
end;
{$R *.dfm}

class function Tdemoxo.GetLocalData: TEntityLocalData;
begin
Result := LocalData;
end;

procedure Tdemoxo.InitEntity(SubKey: integer; Data: string);
begin
inherited;
end;

initialization
Tdemoxo.CreateLocalData(LocalData);

finalization
FreeAndNil(LocalData);

end.
5、在xodemo的窗口增加数据库连接组件和 datasetprovider ,增加完后一个最简单的xo就算完成了。

编译后使用console发布到cbx应用服务器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值