دنیای برنامه نویسی دلفی - Delphi Programming

دنیای برنامه نویسی دلفی از مقدماتی تا پیشرفته ( آموزش ) - Delphi Programming

خارج کردن فایل فلش از فایل اجرایی
ساعت ۳:٠٠ ‎ق.ظ روز یکشنبه ٢۸ امرداد ۱۳۸٦  کلمات کلیدی: گرافیک ، تکنیک ها

به وسیله این تابع می توانید یک فایل فلش را از یک فایل اجرایی خارج کنید و به صورت یک فایل فلش ذخیره نمایید

procedure ExeToSWF(ExeFile,aSWF:string);
var
p:pointer;
f:file;
sz,
swfsize:integer;
const
SWF_FLAG:integer=$FA123456;
begin
if not fileexists(ExeFile) then begin
   messagebox(Application.Handle,pchar('File not found'),pchar('Error'),MB_ICONERROR);
   exit;
end;
assignfile(f,ExeFile);
reset(f,1);
seek(f,filesize(f)-(2*sizeof(integer)));
blockread(f,sz,sizeof(integer));
if sz<>swf_flag then begin
     messagebox(Application.Handle,pchar('Not a valid Projector Exe'),pchar('Error'),MB_ICONERROR);
     closefile(f);
     exit;
end;
blockread(f,swfsize,sizeof(integer));
seek(f,filesize(f)-(2*sizeof(integer))-swfsize);
getmem(p,swfsize);
blockread(f,p^,swfsize);
closefile(f);
assignfile(f,aSWF);
rewrite(f,1);
blockwrite(f,p^,swfsize);
closefile(f);
freemem(p,swfsize);
messagebox(Application.Handle,pchar('SWF Extracted'),pchar('Succes'),MB_ICONINFORMATION);
end;

به عنوان مثال

procedure TForm1.Button1Click(Sender: TObject);
begin
ExeToSWF('C:Desktopflash.exe','C:Desktopf.swf');
end;