易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : delphi

Delphi操作注册表的一般步骤

Delphi操作注册表步骤如下:
-------------------------------------
1)在Uses中添加Registry单元;
2)声明TRegistry对象;
3)创建TRegistry对象;
4)指定根键;
----------------try------------------
5)打开需要操作的主键;
6)读写操作;
7)保存并关闭主键;
--------------finally----------------
8)释放TRegistry对象;
---------------end------------------
==========================================================
Uses Registry;    //添加Registry单元;
var
    MyReg: TRegistry;    //声明TRegistry对象;
begin
    MyReg := TRegistry.Create;   //创建TRegistry对象;
    try
        MyReg.RootKey := HKEY_LOCAL_MACHINE; //指定根键;
        if MyReg.OpenKey('主键名', true) then  //打开需要操作的主键;
        begin
         ......

Delphi操作INI文件的一般步骤

Delphi操作INI文件步骤如下:
-------------------------------------
1)在Uses中添加iniFile单元;
2)声明TiniFile对象;
3)创建TiniFile对象;
----------------try------------------
4)INI文件读写操作;
--------------finally----------------
5)释放TiniFile对象;
---------------end------------------
==============================================
Uses iniFile;   //添加iniFile单元;
var
    MyiniFile: TiniFile;   //声明TiniFile对象;
begin
    MyiniFile := TiniFile.Create;  //创建TiniFile对象;
    try
        MyiniFile.ReadType(---);  //读INI文件
        MyiniFile.WriteType(---);  //写INI文件
    finally
        MyiniFile.Free;   //释放TiniFile对象;
    end;
end;
==============================================
MyIniFil ......

WIN32下DELPHI中的多线程【深入VCL源码】(一)

线程的基础知识
      线程的组成。线程有两部分组成。
     1、一个是线程的内核对象,操作系统用它来对线程实施管理。内核对象也是系统用来存放线程统计信息的地方。
     2、另一个是线程堆栈,它用于维护线程在执行代码时需要的所有函数参数和局部变量。
     进程从来不执行任何东西,它只是线程的容器。线程总是在某个进程环境中创建的,而且它的整个寿命期都在该进程中。这意味着线程在它的进程地址空间中执行代码,并且在进程的地址空间中对数据进行操作。因此,如果在单进程环境中,你有两个或多个线程正在运行,那么这两个线程将共享单个地址空间。这些线程能够执行相同的代码,对相同的数据进行操作。这些线程还能共享内核对象句柄,因为句柄表依赖于每个进程而不是每个线程存在。
  线程是一种操作系统对象,它表示在进程中代码的一条执行路径。在每一个Wi n32的应用程序中都至少有一个线程,它通常被称为主线程或默认线程。在应用程序中也可以自由地创建别的线程去执行其他任务。线程技术使不同的代码可以同时运行。当然,只有在多C P U的计算机上,多个线程才 ......

delphi中move函数的用法

我们能看到以下代码
var pSource,pDest:PChar;
     len: integer;
.......................//一些代码
Move(pSource,pDest,len); //错误
Move(pSource^,pDest^,len); //正确
看起来确实好像是传值,而不是传地址,但是各位别忘了,这不是C,C++,而是Delphi
Object Pascal,所以,绝不能从函数调用的方法判断是传值还是串地址!!必须看函数的
定义,只有定义才能说明是传值还是传地址,再说一遍,这不是C,C++!!
我们看到的函数定义是这样的
procedure Move(const Source; var Dest; Count: Integer);
从定义上看,很清楚,Dest是传地址,而不是传值,那么Source呢,其实大家不太清楚
这里的Const修饰符有两个含义,第一个大家都知道就是Source一常量方式在函数体内,
不可以改变它的值,第二个可能知道的人不多,那就是Source的传递方式和Dest一样,
是传地址!也就是说const和var一样,都是传地址,只不过一个在函数内不允许修改,
另一个是修改后影响调用的变量值
所以Move是传地址,而恰恰不是传值!
Move(const   Source;   var   Dest;   Count:   Integer);   ......

Delphi中实现文件拷贝的三种方法

Delphi中实现文件拷贝的三种方法
1.调用API函数
procedure CopyFile(fromFileName,ToFileName:string);
var
f1,f2:file;
Begin
AssignFile(f1,fromFileName); file://指定源文件名
AssignFile(f2,ToFileName); file://指定目标文件名
Reset(f1);
Try
Rewrite(f2);
Try
If Lzcopy(TfileRec(f1).handle,TfileRec(f2).Handle)<0
Then
Raise EinoutError.creat('文件复制错误')
Finally
CloseFile(f2); file://关闭 f2
End;
Finally
Until length(sLine)<=0;
End;
End;
2.文件流
procedure copyfile;
var f1,f2: tfilestream ;
begin
f1:=Tfilestream.Create(sourcefilename,fmopenread);
try
f2:=Tfilestream.Create(targetfilename,fmopenwrite or fmcreate);
try
f2.Copyfrom(f1,f1.size);
finally
f2.Free;
end;
finally
f1.Free;
end;
end;
3.利用内存块读写buffer实现
Procudure FileCopy(const fromfile,Tofile:string);
Var
F1,F2:file;
NumRead,Numwritten:word;
Buf:array [1..2048] of char;
Begin
AssignFile(F1,fromfile);
Reset(F1,1);
AssignFile(F2,Tofile);
Rewrite(F2,1);
Repeat
BlockRead(F1,bu ......

Delphi中文件拷贝方法集合

一、使用文件流的方法进行拷贝,当然。同样的道理,你也可以使用内存流等方法进行文件的拷贝,原理是一样的。
procedure copyfile(sourcefilename,targetfilename : String);
var f1, f2: tfilestream;
begin
 f1 := tfilestream.Create(sourcefilename, fmopenread);
 try
   f2 := tfilestream.Create(targetfilename, fmopenwrite or fmcreate);
   try
     f2.Copyfrom(f1, f1.Size);
   finally
     f2.Free;
   end;
 finally
   f1.Free;
 end;
end;
二、使用BLOCKREAD和BLOACKWRITE的方法进行文件的拷贝。
Procedure FileCopy(const fromfile, Tofile: string);
var
 F1, F2: file;
 NumRead, Numwritten: integer;
 Buf: array[1..2048] of char;
begin
 AssignFile(F1, fromfile);
 reset(F1, 1);
 AssignFile(F2, Tofile);
 Rewrite(F2, 1);
 repeat
   BlockRead(F1, Buf, sizeof(Buf), NumRead);
   BlockWrite(F2, Buf, NumRead, Numwritten);
 unti ......
总记录数:644; 总页数:108; 每页6 条; 首页 上一页 [1] [2] [3] 4 [5] [6] [7] [8] [9] [10]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号