¹ØÓÚ Delphi ÖÐÁ÷µÄʹÓÃ:·Ö¸îÓëºÏ²¢ÎļþµÄº¯Êý
unit
Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class
(TForm)
Button1: TButton;
Button2: TButton;
procedure
Button1Click(Sender: TObject);
procedure
Button2Click(Sender: TObject);
end
;
var
Form1: TForm1;
implementation
{$R *.dfm}
//·Ö¸îÎļþµÄº¯Êý
{²ÎÊý 1 ÊÇÒª·Ö¸îµÄÎļþÃû; ²ÎÊý 2 ÊÇÒª·ç¸ñÎļþµÄ´óС, µ¥Î»ÊÇ KB}
{·Ö¸îºóµÄÎļþÃûÀ©Õ¹ÃûÓÃÐòºÅÌæ»»}
function
SplitFile(const
FileName: string
; Size: Cardinal): Boolean;
var
fStream: TFileStream; {ÔʼÎļþ}
toStream: TMemoryStream; {·ÖÎļþ}
p,i: Integer; {p ¼Ç¼µ±Ç°Ö¸ÕëλÖÃ; i ¼Ç¼ÕâÊǵڼ¸¸ö·ÖµÄÎļþ}
begin
Result := False;
Size := Size * 1024
; {°Ñ´óСµÄµ¥Î»×ª»»Îª×Ö½Ú}
fStream := TFileStream.Create(FileName, fmOpenRead);
p := 0
;
i := 0
;
toStream := TMemoryStream.Create;
while
p < fStream.Size do
begin
toStream.Clear; {Çå¿ÕÉÏ´ÎÊý¾Ý}
fStream.Position := p; {·ÅºÃÖ¸ÕëλÖÃ}
if
fStream.Size-p < Size then
Size := fStream.Size-p; {×îºóÒ»¸öʱ, ÓжàÉÙËã¶àÉÙ}
toStream.Copyfrom(fStream, Size); {¸´ÖÆ}
toStream.SaveToFile(FileName + '.'
+ IntToStr(i)); {±£´æ}
Inc(i);
p := p + Size;
end
;
fStream.Free;
toStream.Free;
Result := True;
end
;
//ºÏ²¢Îļþ, ²ÎÊýÊÇÆäÖÐÒ»¸ö·ÖÎļþÃû
function
MergeFile(const
FileName: string
): Boolean;
var
ms: TMemoryStream; {¶ÁÈ¡·ÖÎļþ}
fs: TFileStream; {ºÏ²¢ºóµÄÎļþ}
path: string
;
i: Integer;
begin
path := ChangeFileExt(FileName,''
); {È¥µôÐòºÅÀ©Õ¹Ãû}
ShowMessage(path);
i := 0
;
ms := TMemoryStream.Create;
fs := TFileStream.Create(path, fmCreate);
while
FileExists(path + '.'
+ IntToStr(i)) do
begin
ms.LoadfromFile(path + '.'
+ IntToStr(i));
fs.Copyfrom(ms, 0
); {TFileStream ²»ÐèÒª SetSize; µ«Èç¹ûÓà TMemoryStream ¾ÍÐèÒª}
Inc(i);
end
;
ms.Free;
fs.Free;
end
;
Ïà¹ØÎĵµ£º
¶Á“Delphi2010,DELPHIµÄÏ£Íû?”ÓиÐ
ÔÎÄ£ºhttp://www.gowjq.com/forum-29-1.html
1£© Ê¢´óµÄÖ÷Òª¿ª·¢¹¤¾ßÊÇDelphi, Ïê¼û£º http://act.sdo.com/Delphi/£¬ ÓÎÏ·ÊÇÒ»ÖÖ¸´ÔÓ½»»¥½çÃæµÄ¿ª·¢£¬Delphi¿ÉÒÔʤÈΡ£Í¬Ñù×÷ΪÆóÒµÓ¦ÓõÄǰ¶Ë£¬ÓÃDELPHI¿ª·¢Ò²ÊǺܺõÄÑ¡Ôñ¡£
2£© Ò ......
var
Form1: TForm1;
a, b, c: Integer;
implementation
{$R *.dfm}
procedure test1(x, y, z: integer);
asm
mov a,eax
mov b,edx
mov c,ecx
end;
procedure test2(x, y, z: integer);
var
i,j,k: integer;
asm
mov i,eax
mov j,edx
mov k,ecx
mov eax,[esp+8]
mov a,eax
mov ......
DelphiÖнØÈ¡ÎļþÃû²»º¬ºó׺²¿·Ö ÊÕ²Ø
µ±ÎļþÃûº¬ÓÐÖÐÎÄʱ£¬²»ÄÜÖ±½ÓÓÃLeftStr(FileName, Length(FileName - 4))»òÕßÓÃPosÀ´¶¨Î»"."µÄλÖÃÀ´»ñÈ¡¡£ÒòΪÖÐÎÄÒ»¸ö×Ö·ûÏ൱ÓëÁ½¸öÓ¢ÎÄ×Ö·û¡£ÕâÑù½ØÈ¡ÍùÍù»¹ÊǰÑÕû¸öFileName¶¼½ØÏÂÀ´ÁË¡£
Ó¦µ±Ê¹ÓÃCopyº¯Êý£¬ÈçÏ£º
TmpFileLength := Pos(extFile, FileName); TmpFileName := ......
1.·ÀֹˢÐÂʱÉÁ˸µÄÖÕ¼«½â¾ö°ì·¨
{ ·ÀֹˢÐÂʱÉÁ˸µÄÖÕ¼«½â¾ö°ì·¨(¶Ô¸¶Ë«»º³åÎÞЧʱ) }
Perform($000B, 0, 0); //ËøÆÁÄ» ·ÀÖ¹ÉÁ˸
// ×öһЩ»á·¢ÉúÑÏÖØÉÁ˸µÄÊÂÇé..
//½âËøÆÁÄ»²¢ÖØ»
Perform($000B, 1, 0);
RedrawWindow(Handle, nil, 0, RDW_FRAME + RDW_INVALIDATE + R ......