您正在查看 "Delphi" 分类下的文章
2008-07-02 11:49
2008-03-14 23:56
type
TDllRegisterServer=function:HResult; stdcall;
procedure RegisterDll(DllName :string);
var
h:HModule;
Ocx:TDllRegisterServer;
begin
h := 0;
try
h := LoadLibrary(PChar(DllName));
@Ocx:=GetProcAddress(H,'DllRegisterServer');
Ocx;
except
ShowWarning('注册' + DllName + '失败!请检查该文件是否存在。'); |
2008-01-05 11:12
Windows注册表跟踪记录了操作系统和各种在系统上安装的应用程序的有关信息。注册表是一个分层数据库。该数据库包含以特定格式表示的配置信息,并且可以直接通过注册表编
辑器程序编辑,也可以通过应用程序修改。在早期的Windows版本中,INI文件粗略地完成了这一功能,尽管注册表与INI文件有一些相似之处,但不管怎样,由于组织结构的原因,
注册表比传统的INI文件要复杂得多。
注册表分成若干个主要部分,各个部分(或者说关键字)包含了不同种类的系统信息。比如说,当你创建一个应用程序时,你可以在HKEY_LOCAL_MACHINE |
2007-12-24 19:19
uses cxGridStrs,cxGridStrs,cxFilterControlStrs,cxFilterConsts;
cxSetResourceString(@cxSFilterAddCondition, '增加条件'); // Add &Condtion
cxSetResourceString(@cxSFilterAddGroup, '增加组'); // Add &Group
cxSetResourceString(@cxSFilterBoolOperatorAnd, 'and'); // Add 与
cxSetResourceString(@cxSFilterBoolOperatorNotAnd, 'not and '); // NOT AND 非与
cxSetResourceString(@cxSFilterBoolOperatorNotOr, 'not or'); // NOT OR非或
cxSetResourceString(@cxSFil |
2007-11-28 14:55
最近用DELPHI抓取utf的网页抓到类似歐洲格式的编码.PHP下就有现成的函数可以转换,但是DELPHI似乎没有,千辛万苦才找到十六进制Unicode转中文的函数,改造一下实现了,混杂&#编码,混杂繁体的转换.
LAVA共享代码:
unit webutf;
interface
uses
SysUtils,strutils,windows;
function HexToInt(hex:string):cardinal;
function UnicodeToAnsi(SubUnicode: string):string;
function Ut |
2007-11-28 14:45
function UTF8ToAnsiString(utf8str:string; CodePage:integer):AnsiString;
var
i:integer;
buffer:widestring;
ch,c1,c2:byte;
begin
result:=’;
i:=1;
while i<=Length(utf8str) do begin
ch:=byte(utf8str[i]);
setlength(buffer,length(buffer)+1);
if (ch and $80)=0 then //1-byte
buffer[length(buffer)]:=widechar(ch)
else begin |
2007-11-14 22:11
第十一章 TClientDataSet
与TTable、TQuery一样,TClientDataSet也是从TDataSet继承下来的,它通常用于多层体系结构的客户端。TClientDataSet最大的特点是它不依赖于BDE(Borland Database Engine),但它需要一个动态链接库的支持,这个动态链接库叫DBCLIENT.DLL。在客户端,也不需要用TDatabase构件,因为客户端并不直接连接数据库。
由于TClientDataSet是从TDataSet继承下来的,所以,它支持诸如编辑、搜索、浏览、纠错、过滤等功能。由于TClientDataSet在内存中建立了数据的本地副本,上述操作的执行速度很快。也正是 |
2007-11-01 11:04
2007-10-26 21:22
转自:http://www.delphibbs.com/keylife/iblog_show.asp?xid=3893
使用cxGrid有一些时间了,在这里总结一下使用cxGrid的一些方法,希望给刚开始接触cxGrid的人一些帮助。
1.简单介绍:cxGrid右下方的cxGrid1Level1是表示Grid表的层,cxGrid可以有多层,这相当于集合了PageControl的
功能,而cxGrid1Level1右边的cxGrid1DBTableView1相当于DBGrid一样。右击cxGrid1可以添加cxGrid1Level2,右击
cxGrid1Level2,可以选择Create View , Add level 或 |
2007-10-22 16:55
procedure TForm1.Button1Click(Sender: TObject);
var
sl: TStringList;
Value: string;
Index: |
2007-10-07 21:26
转自:http://blog.csai.cn/user1/16236/archives/2006/6793.html
最近在使用Delphi开发一种应用系统的集成开发环境。其中需要实现一个字符串拆分功能,方法基本原型应该是:
procedure SplitString(src: string; ch: Char; var stringList: TStringList);
目的是使用字符ch拆分src字符串,把拆分的结果放入stringList中。例如:src:='abc|def|ghi'; ch='|'的时候,返回的stringList应 |
2007-10-07 15:02
function Base64Encode(const s: string): string;
var
i,c1,c2,c3: Integer;
m,n: Integer;
const
Base64: string = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
begin
Result := '';
m:=1;
n:=0;
for i := 1 to (Length(s) div 3) do
begin
c1 := ord(s[m]);
|
2007-10-04 14:28
use nb30;
procedure TfrmMain.btnRunClick(Sender: TObject);
begin
memResult.lines.add('您的第'+edtAdapterNum.text+'个适配器的MAC地址为'+NBGetAdapterAddress(StrtoInt(edtAdapterNum.Text)));
end;
function TfrmMain.NBGetAdapterAddress(adapterNum: integer): String;
//adapter00为指定的网卡适配器
Var
NCB:TNCB; // NetBios控制块
ADAPTER : TADAPTERSTATUS; // 获取网卡状态
LANAENUM : TLANAENUM; // Netbios lana
intIdx : Integer; // 临时变量
|
2007-09-20 15:52
{返回两个子字符串之间字符的个数}Function p2pcount( s, ss1, ss2 : string ): integer;var i, j, slen : integer;begin i := pos( ss1, s ); j := pos( ss2, s ); slen := Length(ss2); if j >= i then Result := j - i + slen else Result := 0;end; |
2007-09-20 15:52
首部 function TextToFloat(Buffer: PChar; var Value; ValueType: TFloatValue): Boolean; $[SysUtils.pas
功能 返回将指针字符串Buffer转换成无类型变量Value
说明 ValueType指定无类型参数Value的类型
参考 <NULL>
例子
///////Begin TextToFloat
procedure TForm1.Button1Click(Sender: TObject);
var
E: Extended;
begin
CheckBox1.Checked := TextToFloat(PChar(Edit1.Text), E,
fvExtended);
Edit2.Text := FormatFloat('', E);
end |
|
| |