對於MATLAB M檔案怎麼加密

2021-05-26 17:42:32 字數 1112 閱讀 8538

假如我有乙個檔名為:fan.m的檔案,怎麼來對它進行加密呢?如我想讓這個檔案執行十次後,它就自動損壞!或者讓它儲存五天,它也自動損壞!

兩種方法:一、生成p檔案;二、生成.exe檔案,拿剛做好的程式試驗了一下,已經驗證成功,記錄一下過程:

生成p檔案的方法很簡單,在command wondow裡面用

pcode fun

pcode *.m

pcode fun1 fun2 ...

pcode... -inplace

命令轉化為pcode檔案,據說是不會被反編譯的。他的缺點是不能夠脫離matlab單獨執行,必須還在command window裡面呼叫,可移植性不強。如果生成.exe檔案就可以解決這個問題。

生成.exe檔案的方法稍微複雜點:

1、首先要保證你的程式是函式型的,而不是指令碼形式的。如果是指令碼形式的也不要緊,只需要在指令碼檔案第一行新增 function =name()即可。

2、然後,在command window裡用mcc -m -b    sgl file.m命令生成.exe檔案,期間會讓你選擇編譯器(我的是vc6.0),會發現生成了一堆檔案。

3、將上步生成的那一堆檔案一起拷到待執行的機器。此時仍需matlab所必需的動態連線庫。將 /extern/lib/win32/mglinstallar.exe拷貝到到待執行機器上。

4.在待執行的機器上先執行mglinstallar.exe, 然後選擇解壓目錄,將在將在指定目錄下解壓縮出bin和toolbox兩個子目錄,其中在bin\win32目錄下就是數學庫和圖形庫脫離matlab執行所需的所有動態連線庫,共有n個。可以將這些.dll考入system32, 也可以直接放在應用程式目錄下(我把它拷在應用程式目錄下了)。而toolbox目錄則必須與應用程式同一目錄。

5.大功告成,雙擊.exe即可執行了。

總結:兩種方法都可以達到保護源**的目的,但是各有各的優缺點。生成p檔案的優點是方法簡單,生成檔案大小只是源**的3倍左右,缺點是不能脫離matlab環境執行。生成.exe檔案的優點是可以脫離matlab單獨執行,缺點是生成的檔案大小是原來的幾千倍(5555555555,當然包含那些.dll檔案,體積最龐大的一部分)。就拿我的程式做個比較,原始碼是8.34k,生成p檔案22.6k,生成可執行檔案(含那些.dll)共30多兆。

MATLAB M函式檔案

二.m函式檔案 三.函式控制代碼 首先,要了解指令碼檔案和函式檔案的區別,在matlab中編寫的程式檔案稱為m檔案,m檔案分為指令碼檔案和函式檔案倆種。函式檔案 有輸入引數和輸出引數,由function引導,使用者可以自己建立函式 呼叫函式,就像matlab內嵌函式一樣使用,函式中的變數一般是區域性...

Matlab m指令碼檔案

m檔案matlab允許編寫兩種程式檔案 指令碼 指令碼檔案是以.m副檔名的程式檔案。在這些檔案中,可以編寫一系列要一起執行的命令。指令碼不接受輸入,不返回任何輸出。它們對工作空間中的資料進行操作。函式 函式檔案也是擴充套件名為.m的程式檔案。函式可以接受輸入和返回輸出。內部變數是函式的區域性變數。建...

加密檔案忘記密碼怎麼解密 Word檔案加密與解密

本期林子將帶領大夥就word檔案的加密和解密方式進行 通過案例使讀者可以了解到word檔案加密的相關知識,以及如何利用工具輕鬆破解加密後的word檔案。一 word加密檔案 一般情況下,我們所說的對word檔案進行加密是指採用word字處理軟體自帶的加密功能進行加密。1 開啟 保護文件 選項卡 在w...