在确定安装好Matlab Compiler后,还需要对Compiler进行适当的配置,方法是在Matlab命令窗口输入:
Mbuild –setup, 按提示选择matlab自带编译器LCC。
2.将脚本编译为可执行文件:
如项目文件包含:gui.m, gui.gif, fun1.m。
在此路径下命令行输入:mcc –m gui.m,生 成:mccExcludedFiles.log,ReadMe.txt,gui.ctf,gui.prj,gui_main.c,gui_mcc_component_data.c,gui.exe。其中:gui.ctf,gui.exe为晌册脱离matlab环境运行必需的文件。
3.在未安装matlab的机器上运行可执行程序。
将R22007b\toolbox\compiler\deploy\win32中的MCRinstaller.exe安宴族宏装到该计算机上,将生成可执行程序脱离matlab运行所需的函数库。
将2中生成的gui.ctf,gui.exe拷贝到该计算机同一路径。运行gui.exe将生成gui_mcr文件夹,包穗旅含程序运行所需的库。至此完成。
4.去除独立可执行程序运行时的“DOS黑窗口”。
以上生成的exe程序运行时首先d出一个DOS界面窗口,如果不需要其输出数据和错误信息,可将其去除。
matlba命令行输入:
cd(prefdir)
edit compopts.bat
此时compopts.bat打开,在文件最后添加:
set LINKFLAGS=%LINKFLAGS% -subsystem windows
如果程序比较复杂,易出现异常,则不建议去除这个dos窗口以便调试。
另外,这个办法是适用于你用的编译器为LCC,如果是其他的,那么所加语句有所不同
Microsoft Visual C/C++:
set LINKFLAGS=%LINKFLAGS% /SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup
Borland:
set LINKFLAGS=%LINKFLAGS% -aa
可以把其他数据按一定的格式组织并集中压缩成为zip文件,然后在输出swf时把zip文件作为资源链接进去,在使用时调用,不过这涉及大搭亏量的临时解压缩 *** 作,体验不会太好,而且会产生巨大的swf文件,也不太合理(毕竟swf文件能力有限)。再给你提供一种思路:利用其它工具把swf和对应的资源进行打包,打包后自启动直接提供目录映射实现swf与其它资源的相对路径稳定(比如把打包后的文件内部结构映射为http服务,并保持swf与其闭散它文件的相对路径稳定),再在特定协议下(这里为http)调用swf就可以正常运行了,在这样的环境中可以利用其轿枝氏它工具的能力(比如c语言开发)提供快速解压(或者实时解压、按需解压),也能突破swf格式要求,并且因为swf还是由对应播放器或者说插件来运行,客户感觉是透明的应用,不知道你的处理,所以还是比较方便的,其实一些游戏的开发就是利用了类似的机制。
你是说的反汇编通常,编写程序是利用高级语言如C,Pascal等语言进行编程的,后再经过编译程序生成可以 被计算机系统 直接执行的执行文件。反汇编即是指将这些执行文件反编译还原成 汇改野搏编语言或其他 高级语言。但通常脊察反编译出来的程序与原程序会存在许多不同,虽然执行效果相同,但程序代码 会发生很大的变化,非编程高手很难读懂。另外,有许多程序也可以 进行逆向 *** 作即 反编译 以求修改,例如Flash的文件生成的SWF文件,也可以被反汇编成Flash原码,但会发现与原程序有很大变化。
反汇编可以通过反汇编的一些软件实现吧,好象DEBUG也能反汇编的 DEBUG 文件位置 -u,这样好象就能实现了吧
静态反汇编是从反汇编出来的程序清单上分析,从提示信息入手进行分析。目前,大多数软件在设计时,都采用了人机对话方式。所谓人机对话,即在软件运行过程中,需要由用户选择的地方,软件即显示相应的提示信息,并等待用户按键选择。而在执行完某一段程序之后,便显示一串提示信息,以反映该段程序运行后的状态,是正常运行,还是出现错误,或者提示用户进行下一步工作的帮助信息。为此,如果我们对静态反汇编出来的程序清单进行阅读,可了解软件的编程思路,以便顺利破解。 常用的静态分析工具是W32DASM、OllyDbg IDA和HIEW等。核祥但是反汇编需要会汇编语言和C语言,不简单的~~~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)