L laohe Unregistered / Unconfirmed GUEST, unregistred user! 2002-01-23 #1 现在有关于这方面的介绍很乱很散,有没有高手详细介绍一下,谢谢了 以前的位高手介绍过,并公开源码,可惜的是,我调试时总是不能播放。 很可惜,小弟现在真心向诸位学习,取经求教;
一 一阵风 Unregistered / Unconfirmed GUEST, unregistred user! 2002-01-23 #3 如果你装了flash5, 在files-->import 导入你的.swf文件, 然后 files--->保存.exe文件, 这就ok了。
T taozhiyu Unregistered / Unconfirmed GUEST, unregistred user! 2002-01-23 #4 人家是问怎么编程实现!你说的方法我都会!也许应该到官方网站看看哦! 不知道flash的ocx里面有没有相应的函数
L laohe Unregistered / Unconfirmed GUEST, unregistred user! 2002-01-23 #5 兄弟!我是说delphi怎么样实现这个功能,我开发制作flash有二年多的时间,这个当然后, delphi开发出来的软件,怎么样实现该功能,我相信,这个有很多人想了解,大侠有大谅,当 为了普救众生,把这绝招公开吧!
兄弟!我是说delphi怎么样实现这个功能,我开发制作flash有二年多的时间,这个当然后, delphi开发出来的软件,怎么样实现该功能,我相信,这个有很多人想了解,大侠有大谅,当 为了普救众生,把这绝招公开吧!
T taozhiyu Unregistered / Unconfirmed GUEST, unregistred user! 2002-01-23 #6 你研究过flash的ocx嘛?有没有相应的函数?
L laohe Unregistered / Unconfirmed GUEST, unregistred user! 2002-01-23 #7 引用:你研究过flash的ocx嘛?有没有相应的函数? 我看过了,我用了几乎所有的函数,好像没有,相信没有那么简单
L laohe Unregistered / Unconfirmed GUEST, unregistred user! 2002-01-23 #10 在电脑爱好者中有简介 exe to swf的文章,所以这技术没有什么可保密的,要麻就让大家都会,所以我才出题让大家一起论一下。看看集大家的建议能不能,综合出来;相信高手们会出手相救的,因为会的人不会计较这一点点;
在电脑爱好者中有简介 exe to swf的文章,所以这技术没有什么可保密的,要麻就让大家都会,所以我才出题让大家一起论一下。看看集大家的建议能不能,综合出来;相信高手们会出手相救的,因为会的人不会计较这一点点;
T taozhiyu Unregistered / Unconfirmed GUEST, unregistred user! 2002-01-23 #11 我找到了!!!有老外在讨论这个!而且有个老外已经写了一个程序用来swf2exe 等着!我在详细看看!
J jame Unregistered / Unconfirmed GUEST, unregistred user! 2002-02-21 #15 http://go8.163.com/jamewee/ART/TECH/20020221a.htm
风 风云再起 Unregistered / Unconfirmed GUEST, unregistred user! 2002-10-05 #18 我想ocx控件可能不行 你还的了解swf的格式 swf->flash又不是不可以 有哪个软件
T taozhiyu Unregistered / Unconfirmed GUEST, unregistred user! 2002-10-05 #19 { 从问题到结果 ——EXE2SWF的开发手记 作者: 北京 Daffodil 11月27日 16:14 http://www.cfan.net.cn/netschool/cs/20011127/10271625.htm } unit FileFormatConvertor; interface uses Classes, SysUtils, Forms; function Exe2Swf(SourceExe, DestinySwf, Linker: string): boolean; function Swf2Exe(SourceSwf, DestinyExe, Linker: string): boolean; implementation function Exe2Swf(SourceExe, DestinySwf, Linker: string): boolean; var // 分别处理EXE、SWF文件的文件流 SourceStream, DestinyStream: TFileStream; // SWF文件的大小 SwfFileSize: Cardinal; begin result := false; // 打开EXE形式的源文件 SourceStream := TFileStream.Create(SourceExe, fmOpenRead or fmShareExclusive); try // 读取文件标志 SourceStream.Seek(- 2 * sizeof(integer), soFromEnd); SourceStream.ReadBuffer(SwfFileSize, sizeof(integer)); // 判断读到的文件标志是否和FA123456相同 // 借此判断是否是Macromedia官方格式的Flash文件 if SwfFileSize = $FA123456 then begin // 读取SWF文件的大小 SourceStream.ReadBuffer(SwfFileSize, sizeof(SwfFileSize)); SourceStream.Seek(- SwfFileSize - 2 * sizeof(integer), soFromEnd); // 打开目标SWF文件 DestinyStream := TFileStream.Create(DestinySwf, fmCreate); try // 从EXE文件流中读取数据 DestinyStream.CopyFrom(SourceStream, SwfFileSize); result := true; finally // OK,释放文件流 DestinyStream.Free; end; end; finally // OK,释放文件流 SourceStream.Free; end; end; function Swf2Exe(SourceSwf, DestinyExe, Linker: string): boolean; var // Source、Destiny、Linker分别是swf、exe和Standalone Player的文件名 SourceStream, DestinyStream, LinkStream: TFileStream; flag: Cardinal; SwfFileSize: integer; begin result := false; // 建立EXE文件 DestinyStream := TFileStream.Create(DestinyExe, fmCreate); try // 追加Standalone Player LinkStream := TFileStream.Create(Linker, fmOpenRead or fmShareExclusive); try DestinyStream.CopyFrom(LinkStream, 0); finally LinkStream.Free; end; // 追加SWF文件 SourceStream := TFileStream.Create(SourceSwf, fmOpenRead or fmShareExclusive); try DestinyStream.CopyFrom(SourceStream, 0); // 追加FA123456标志 flag := $FA123456; DestinyStream.WriteBuffer(flag, sizeof(integer)); // 追加SWF文件长度 SwfFileSize := SourceStream.Size; DestinyStream.WriteBuffer(SwfFileSize, sizeof(integer)); result := true; beep;///////////////////////////////// finally SourceStream.Free; end; finally DestinyStream.Free; end; end; end.
{ 从问题到结果 ——EXE2SWF的开发手记 作者: 北京 Daffodil 11月27日 16:14 http://www.cfan.net.cn/netschool/cs/20011127/10271625.htm } unit FileFormatConvertor; interface uses Classes, SysUtils, Forms; function Exe2Swf(SourceExe, DestinySwf, Linker: string): boolean; function Swf2Exe(SourceSwf, DestinyExe, Linker: string): boolean; implementation function Exe2Swf(SourceExe, DestinySwf, Linker: string): boolean; var // 分别处理EXE、SWF文件的文件流 SourceStream, DestinyStream: TFileStream; // SWF文件的大小 SwfFileSize: Cardinal; begin result := false; // 打开EXE形式的源文件 SourceStream := TFileStream.Create(SourceExe, fmOpenRead or fmShareExclusive); try // 读取文件标志 SourceStream.Seek(- 2 * sizeof(integer), soFromEnd); SourceStream.ReadBuffer(SwfFileSize, sizeof(integer)); // 判断读到的文件标志是否和FA123456相同 // 借此判断是否是Macromedia官方格式的Flash文件 if SwfFileSize = $FA123456 then begin // 读取SWF文件的大小 SourceStream.ReadBuffer(SwfFileSize, sizeof(SwfFileSize)); SourceStream.Seek(- SwfFileSize - 2 * sizeof(integer), soFromEnd); // 打开目标SWF文件 DestinyStream := TFileStream.Create(DestinySwf, fmCreate); try // 从EXE文件流中读取数据 DestinyStream.CopyFrom(SourceStream, SwfFileSize); result := true; finally // OK,释放文件流 DestinyStream.Free; end; end; finally // OK,释放文件流 SourceStream.Free; end; end; function Swf2Exe(SourceSwf, DestinyExe, Linker: string): boolean; var // Source、Destiny、Linker分别是swf、exe和Standalone Player的文件名 SourceStream, DestinyStream, LinkStream: TFileStream; flag: Cardinal; SwfFileSize: integer; begin result := false; // 建立EXE文件 DestinyStream := TFileStream.Create(DestinyExe, fmCreate); try // 追加Standalone Player LinkStream := TFileStream.Create(Linker, fmOpenRead or fmShareExclusive); try DestinyStream.CopyFrom(LinkStream, 0); finally LinkStream.Free; end; // 追加SWF文件 SourceStream := TFileStream.Create(SourceSwf, fmOpenRead or fmShareExclusive); try DestinyStream.CopyFrom(SourceStream, 0); // 追加FA123456标志 flag := $FA123456; DestinyStream.WriteBuffer(flag, sizeof(integer)); // 追加SWF文件长度 SwfFileSize := SourceStream.Size; DestinyStream.WriteBuffer(SwfFileSize, sizeof(integer)); result := true; beep;///////////////////////////////// finally SourceStream.Free; end; finally DestinyStream.Free; end; end; end.