橙子的Delphi技术专区
百度首页 | 百度空间
 
公告
 
 
 
 
     
 
文章列表
 
2008-10-05 20:45
大家都知道D2009提供的ObjAuto.pas是一个半成品,只能取方法,不能取参数。但是其实这些功能都是可以实现的
我在此做个补完,供Delphi6~Delphi2009使用,同时添加了编译预处理,供各个不同版本的Delphi兼容编译
特地做了个D7下的Demo,老版本的Delphi一样可以使用。

有需要的请去我的论坛下载,点击进入
 
2008-09-29 21:16
鉴于某人说Delphi的反射不能传入或传出类,我在此纠正一下这个说法,下面的代码可以证实,类可以传入传出。
由于我已经把D2009的反射单元移去D2007,因此就不用D2009了,所以代码中暂时不考虑Unicode的问题。

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ObjAutoX, StdCtrls;

type
{$MethodInfo ON}
TTest=class(TPersistent)
public
    procedure Call(s: string;
 
2008-09-29 10:08
说这个问题前,请大家先参考李维先生的文章:《Tiburon遊記3 動手建立一個DataSnap JSON伺服器吧》
http://gordonliwei.spaces.live.com/blog/cns!CCE1F10BD8108687!2365.entry

文章中明确的说了,“對於需要輸出服務給用戶端的類別,資料模組或是遠端資料模組,必須使用新的編譯器指令{$MethodInfo ON}和{$MethodInfo OFF}包圍類別宣告。”

MethodInfo开关真的是新的编译器指令吗?前天我的论坛上出现一个关于D2009的元信息的讨论,也暴出了这个秘密,帖子见链接:http://mydelphi.5d6d
 
2008-09-28 21:39
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ObjAuto, StdCtrls;

type
{$MethodInfo ON}
TTestCall = class(TPersistent)
public
    function Add(X,Y: integer): integer;
    procedure Msg(s: string);
end;
{$MethodInfo OFF}

TForm1 = class(TForm)
    Button1: TButton;
    Button
 
2008-09-25 17:17
这是受某官方人员之命研究的,恩。。很好很强大。。

首先从System32下找到DBXClientDriver120.bpl
然后从CodeGear Shared\RAD Studio\Shared Assemblies\6.0目录下找到Borland.Data.DBXClientDriver.dllBorland.Data.DbxCommonDriver.dll
最后再从Shared Document内找到dbxdrivers.inidbxconnections.ini
把这五个文件复制出来。

然后在需要部
 
2008-09-25 16:07

自从Delphi2009添加了JSON这个特性之后,相信很多人都对它十分感兴趣吧,我抽了个空做一个小小的Demo,演示了JSON传递数据的情况。

首先建立一个Server,放入DSServer, DSServerClass, TCPServerTransport各一个,然后把DSServerClass和TCPServerTransport关联到DSServer。再放入ADOConnection, ADOQuery, DataSetProvider, ClientDataSet各一个,做好关联。这些组件将完成生成XML数据的作用。

做好后界面如图所示:

 
2008-09-17 12:34
        public string GetCompactFrameworkVersion()
        {
            string ver = System.Environment.Version.ToString();
            string verStr = "Unknown";
            switch (ver)
      
 
2008-09-14 14:56
这篇文章是解答CnPack论坛上某位同志的问题,由于CnPack组件包未提供CB2007下的安装包,从CB6移植安装包也是直接报错,因此我稍作研究,并且试图把cnPack组件包安装到CB2007下。

下面是安装的过程:
一、配置环境
1) 在include path中,添加$(BDS)\include\vcl
2) 在Library path中,添加$(BDS)\include\vcl$(BDS)\lib\release,另外,把CnPack组件包下Source目录也配进去,包括Source下的子目录,也一并配置。
3)
 
2008-09-09 09:55
当Delphi支持了Unicode,它将会变成什么样子呢?
我的看法如下:
1. 开发变得复杂了,因为要更多的考虑编码问题
2. 绝大多数控件都需要修改,以使其能适应Delphi2009
3. 多国语言的软件得到了较好的支持

第一点和第二点,相信很多人都有体会了,原本在Delphi2007上通顺利编译通过的项目,放到Delphi2009上就要进行很大的改动。特别是API的调用,MessageBoxA改成MessageBoxW之类,会让原本简单的程序变得很复杂。
我在论坛上承接移植控件的项目时,已经有很深的体会。比如说 str: array[0..15] of Char,原
 
2008-09-03 18:25
这是一个功能类似于DelForEx的代码排列工具,能快速的将代码进行排列,基本功能已实现,正进一步开发中。

或许试图修改过DelForEx的人都知道,其实它的开源是假的,那个最关键的DelForDll.dll没有源码。尝试将其移植到Delphi2009时,却发现有一个导出方法的参数是TStringList。当场吐血,Delphi2009中的TStringList是Unicode的,传入Ansi的TStringList就变成乱码,而且也未找到将TStringList转换回Ansi的方法。
其实在我写这篇文章时,已经找到了相关的方法了,把Delphi2007的RTL拿来用就行,但是我没有这么做。一方面是因
 
     
 
 
个人档案
 
rarnu
男, 23岁
上海 杨浦区 
上次登录:
11小时前
加为好友
 
   
 
日历
 
     
 
留言板
 

楼上给版权费… 看你是熟人,随便收100W算了…
 

不贰不贰,贰乎哉?不贰也~
 

不贰不贰,贰乎哉?不贰也~
 

肥猫很贰。。。。
 

你贰啊。。。木有上Hi么?
 
     
 
最新评论
   
文章评论|照片评论

 

嗯,好像还缺个Midas.dll吧。
 

高楼留名。。。
 

DELPHI 7里面确实有哦,没注意过,所以没有发现
 
 
橙子爪
 
漂亮...
 
很酷!
 
     
 
最近访客
 
 

sailxia

greyair

buckayro

badbanana

NaLanChuXian

TinTinSoft

delphistu

nsgtao
     
 
其它
 
已有人次访问本空间
 
订阅RSS  什么是RSS?

您也想拥有这样的空间?请点此申请。
     


©2008 Baidu