1. 用了KOL后,如果想点击某一Button后退出程序,可以用
Form.Close();
而不是Close; 因为Close是调用Delphi的System unit的,在KOL中不能使用。
2. 查询一个键值,直接调用RegQueryValue就可以了,不需要先调用RegCreateKey,RegOpenKey之类的API
3. DEC在Delphi7中安装的时候,要修改DECReg.pas中以下的内容:
uses
DECConst, DECUtil, Hash, Cipher, HCMngr, SysUtils, Classes, DsgnIntf,Cipher1, RFC2289
uses
DECConst, DECUtil, Hash, Cipher, HCMngr, SysUtils, Classes, DesignIntf,DesignEditors, Cipher1, RFC2289
4. DEC中的散列函数的使用方法有两种:
(一)、将Palette上DEC中的HashManager(HCMngr)拖到Form上,这样会自动生成一个THashManager的变量的定义:HashManager1: THashManager;然后在某个procedure中,此对象就不需要再调用create构造函数了,可以直接使用,如下:
HashManager1.CalcString( ' cnbragon ' );
Edit1.Text: = HashManager1.DigestString[fmtHEX];
(二)、在函数中定义THashManager变量,然后调用create来构造,如下:
var
HM2:THashManager;
begin
HM2: = THashManager.Create(nil);
HM2.Algorithm: = ' Ripe Message Digest 160 ' ;
HM2.CalcString( ' cnbragon ' );
Edit2.Text: = HM2.DigestString[fmtHEX];
HM2.Free;
end;
其余的如CipherManager都是一样的,都有这两种方法。但是使用CipherManager的时候要注意cipher的operation mode
5. 注意DEC在DECUtil.pas中定义的format:
// String Formats
fmtDEFAULT = - 1 ; // use DefaultStringFormat
fmtNONE = 0 ; // allways an Empty String, nothing Action
fmtCOPY = 1 ; // One to One binary (input = output)
fmtHEX = 16 ; // Hexadecimal
fmtHEXL = 1016 ; // Hexadecimal lowercase
fmtMIME64 = $ 1064 ; // MIME Base 64
fmtUU = $ 5555 ; // UU Coding $5555 = 'UU'
fmtXX = $ 5858 ; // XX Coding $5858 = 'XX'
其中fmtCOPY是以二进制的形式表示的
6.
CnWizards 在 Delphi / C++Builder / BDS 的 IDE 中提供了十多个可独立设置的
子专家,数十种功能,主要包括:
* 代码输入助手
* 增强的单元窗体列表功能
* TabOrder 设置专家
* 窗体设计器的浮动工具栏
* MSDN 帮助集成功能
* 代码编辑器工具栏与功能扩展
* 工程相关的扩展功能
* 组件面板多行显示支持
* 窗体置顶与折叠功能
* 源代码统计功能
* 引用单元清理
* 其他大量增强与改进
下载网址:http://www.cnpack.org/showdetail.php?id=493&lang=zh-cn
7.
kol & mck 在delphi 2007中使用有不少问题,比如缺少Proxies.dcu, DockForm.dcu,很烦,最后还是换回delphi7
但在d7中也出现了找不到proxies.dcu的问题,按照下面这个帖子里的第1条解决方法 解决了(即手动添加Proxies.pas),第2种解决不了