uses ShockwaveFlashObjects_TLB;
implementation
{$R *.DFM}
{$R flash.res}
procedure TForm1.FormCreate(Sender: TObject);
var
SystemDir : array[0..MAX_PATH] of Char;
SWFDir, AppDir: String;
Fres: TResourceStream;
Ffile: TFileStream;
begin
GetSystemDirectory(@SystemDir,MAX_PATH);
SWFDir := SystemDir+'\macromed\flash\';
GetDir(0,AppDir);
if fileexists(SWFDir+'swflash.ocx')=false then begin
{$i-} MkDir(SystemDir+'\macromed');
MKDir(SystemDir+'\macromed\flash');
{$i+}
Fres := TResourceStream.Create(0,'SHOCKWAVEOCX',RT_RCDATA);
Ffile := TFileStream.Create(SWFDir+'swflash.ocx',fmCreate);
Ffile.CopyFrom(Fres,Fres.Size);
Fres.Free;
Ffile.Free;
winexec(PChar('regsvr32 /s '+SWFDir+'swflash.ocx'),SW_HIDE);
end;
Fres := TResourceStream.Create(0,'SHOCKWAVEFILE',RT_RCDATA);
Ffile := TFileStream.Create('flashmovie.swf',fmCreate);
Ffile.CopyFrom(Fres,Fres.Size);
Fres.Free;
Ffile.Free;
FlashMovie.Movie := AppDir+'\flashmovie.swf';
end;
Un Saludo.