博客年龄:17年7个月
访问:?
文章:353篇

个人描述

姓名:思敏 职业:高校教师 位置:中国,上海

MATLAB文件加密

分类:专业学习
2010-05-15 15:03 阅读(?)评论(0)

由于最近需要对MATLAB程序进行统一处理和加密,网上搜索和自我尝试下,终于得以实现,具体实现如下:

1.pcode命令:将m文件加密成p文件,可在MATLAB环境下运行,功能如m文件,将无法查看和修改及破解

    a.pcode filename.m  将filename的m存储为p文件

    b.pcode dir/*.m     将路径dir下的所有m文件转换为p文件,也可用pcode dir

    

2.生成.exe可执行文件,可独立MATLAB环境运行

    a.将MATLAB当前目录设置至需要M程序所在的路径;

    b.在命令窗口Command window 输入 Mbuild –setup  选择编译器对程序进行编译:

      (1)当出现Would you like mbuild to locate installed compilers [y]/n?  输入 y

       (2) 出现 Select a compiler:
           [1] Lcc C version 2.4.1 in D:\PROGRAM FILES\MATLAB71\sys\lcc
           [2] Microsoft Visual C/C++ version 6.0 in C:\Program Files\Microsoft Visual Studio
           [0] None

           Compiler: 

           输入 1,选MATLAB自带的编译器进行编译。

      (3) 出现Compiler: Lcc C 2.4.1 
           Location: D:\PROGRAM FILES\MATLAB71\sys\lcc 
           Are these correct?([y]/n):   输入 y

      (4)  出现DllRegisterServer in D:\Program Files\MATLAB71\bin\win32\mwcommgr.dll succeeded 

           显示编译成功

     c. 在命令窗口输入mcc –m  welcome 需注意 welcome 为程序中的主程序名称,若主程序为main.m 则输入mcc –m  welcome 默认生成 welcome.exe可执行文件。

     d. 若需要在没安装MATLAB机器上运行welcome.exe,需要进行M文件编译机器上的MCRinstaller.exe与(MATLAB 安装目录下 MATLAB7.1\toolbox\compiler\deploy\win32)编译生成的相相关文件一起拷贝至待运行机器中。接着点击运行MCRinstaller.exe安装运行welcome.exe的基本编译环境,其次是要将MCRinstaller.exe安装目录\runtime\win32”这个路径添加到该计算机的环境变量中,具体添加的方法是:右击“我的电脑”“属性”“高级”“环境变量”“添加”指定一个变量名,然后将上述路径复制到里面就可以了。

    e.点击welcome.exe运行。MATLAB程序生成可执行文件,并在未安装MATLAB机器上运行成功。

    

辅助事项:

(1) 在生成可执行文件时出现问题:可能的原因是本机环境或自身操作出现问题,若仍无法解决,可考虑换台机器进行编译和可执行文件生成。(个人就是在exe生成时出现这样那样的问题,仍无法解决,最后换台机器成功生成,目前本机出现的原因仍未解决 :))

(2) 在新机器上运行时出现问题:可能的原因是exe可执行文件只打包.m和.fig文件,如果在整个程序运行过程中调用了外部数据,需要将外部数据与编译生成的文件同时拷贝,才能成功运行。

(3) 在用MATLAB LCC编译器生成可执行文件时将出现DOS的黑色窗口,如果想去除需要安装VC进行编译,网上有相关的资料参考,目前我仍保留着DOS的黑框 :)

 

长嘘一声,总算是把4年的程序有个了解和交代  微笑 

 

  最后修改于 2010-05-15 19:07    阅读(?)评论(0)
 
表  情:
加载中...
 

请各位遵纪守法并注意语言文明