主要内容

このページの翻訳は最新ではありません。ここをクリックして,英語の最新版を参照してください。

pcode

コンテンツを不明瞭化した実行可能ファイルの作成

説明

pcode (は,検索パス上の.mファイルまたはフォルダー内のコードを難読化し,拡張子が每分钟のPファイルを作成します。.mファイルである場合,結果のファイルはitem.pです。がフォルダーの場合は,そのフォルダー内のすべてのスクリプトまたは関数のファイルが現在のフォルダーで難読化されます。Pファイルは,.mファイルへの変更後でも,対応する.mファイルよりも優先的に実行されます。

メモ

関数pcodeはプログラムファイルを難読化しますが,暗号化するわけではないため,Pファイルは安全ではありません。知的所有権を保護するためのファイルのPコード化は,推奨されていません。

pcode (item1,第二条,…,itemNは,コンマ区切りリストで指定された各.mファイルまたはフォルダーからPファイルを作成します。

pcode (___“原地”)は,入力と同じフォルダー内にPファイルを作成します。その他すべての入力引数の後に“原地”を指定します。

すべて折りたたむ

関数ファイルをPファイルに変換します。

現在のフォルダーにあるmyfunc.mという名前のファイルで,3次多項式の平方根を返す関数を定義します。

函数Y =√(x)^3 + x ^2 + x + 1);结束

myfunc.mからPファイルを作成します。myfuncを呼び出すときにMATLAB®が使用するファイルを決定します。

pcodemyfunc一个= myfunc (3);哪一个myfunc
c: \ myMATLABfiles \ myfunc.p

sparfunフォルダーから選択したファイルをPファイルに変換します。

一時フォルダーを作成し,既存のパスを.mファイルに定義します。

tmp = tempname;Mkdir (tmp) cd(tmp) filename = fullfile(matlabroot,“工具箱”matlab的“sparfun”“spr * m”);

Pファイルを作成します。

pcode(文件名)dir (tmp)
, . .sprand。p sprandn。p sprandsym。p sprank.p

これで一時フォルダーには,エンコードされたPファイルが保存されます。

クラスの一部である入力ファイルからPファイルを生成します(同じ手順をパッケージの一部であるファイルに適用できます)。この例では,既存のMATLABサンプルクラスを使用します。

.mファイルを含む既存のクラスフォルダーとしてclassfolderを定義します。

classfolder = fullfile (docroot,“techdoc”“matlab_oop”...“例子”“@BankAccount”dir (classfolder)
classfolder = C:\Program Files\MATLAB\R2019a\help\techdoc\matlab_oop\examples\ @BankAccount .. .BankAccount.m

一時フォルダーを作成します。このフォルダーにはこの時点ではクラス構造体は入っていません。

tmp = tempname;mkdir (tmp) cd (tmp) dir (tmp)
, . .

パスclassfolder内のすべての.mファイルに対してPファイルを作成します。入力ファイルはクラスの一部であるため,MATLABでは出力ファイルが同じクラスに属するようにフォルダー構造を作成します。

pcode (classfolder) dir (tmp)
, . .@BankAccount

Pファイルは同じフォルダー構造に置かれます。

dir (“@BankAccount”
, . .BankAccount.p

入力ファイルと同じフォルダー内にPファイルを生成します。

複数の.mファイルを一時フォルダーにコピーします。

文件名= fullfile (matlabroot,“工具箱”matlab的“sparfun”“spr * m”);tmp = tempname;mkdir (tmp)复制文件(文件名,tmp) dir (tmp)
, . .sprand。m sprandn。m sprandsym。m sprank.m

Pファイルを,元の.mファイルと同じフォルダー内に作成します。

pcode (tmp,“原地”dir (tmp)
.sprand。m sprandn。m sprandsym。m sprank.m..sprand。p sprandn。p sprandsym。p sprank.p

入力引数

すべて折りたたむ

難読化する.mファイルまたはフォルダー。文字ベクトルまたは string スカラーとして指定します。

  • 入力引数にファイル拡張子がなく,フォルダーの名前もない場合,関数はMATLABパス上または現在のフォルダー内になければなりません。

  • ワイルドカード文字を使用すると,pcodeは,.m拡張子のないすべてのファイルを無視します。

  • 関数pcodeはライブスクリプトやライブ関数(.mlx)をサポートしていません。

  • がパッケージフォルダーまたはクラスフォルダーに含まれている場合は,pcodeは同じパッケージまたはクラス構造体を作成し,結果のPファイルを収納します。

.mファイルまたはフォルダーのリスト。文字ベクトルまたは string スカラーのコンマ区切りリストとして指定します。このリストには、ファイルとフォルダーを混在させて含めることができます。

詳細

すべて折りたたむ

リリースの互換性

pcodeアルゴリズムはMATLAB版本R2007bで設計し直されました。R2007bより前のバージョンで生成されたPファイルをR2015b以降で実行することはできません。R2007b以降で生成されたファイルはR2007a以前では実行できません。

関連ファイルのPコード化

プログラムだけでなく,プログラムが依存している関数およびスクリプトを難読化する場合があります。プログラムの実行に必要なファイルを判別するには,関数matlab.codetools.requiredFilesAnd下载188bet金宝搏Productsを使用します。

コードの難読化

Pファイルは難読化されていて,MATLABコードの実行のみの形式です。PファイルをMATLABエディターまたはライブエディターで開くことはできません。

R2006aより前に導入