Несмотря на то, что исходный код MATLAB® (.m
) исполняемый файл отдельно, к содержимому исходных файлов MATLAB легко получают доступ, разоблачающие детали разработки и реализации. Если вы не хотите распределять свой код закрытого приложения в этом формате, можно использовать одну из этих опций вместо этого:
Развернитесь, когда Псевдокод — Преобразует некоторых, или все ваши файлы исходного кода к затененной содержимым форме вызвали файл P-code (от его .p
расширение файла), и распределяют ваш код приложения в этом формате. Когда Псевдокоды MATLAB файл, файл запутывается не зашифрованный. В то время как содержимое в .p
файл затрудняет, чтобы понять, он не должен считаться безопасным. Не рекомендуется что вы Pcode-файлы, чтобы защитить вашу интеллектуальную собственность.
MATLAB не поддерживает live скрипты преобразования или live функции к Pcode-файлам.
Скомпилируйте в двоичный формат — Компиляция ваши файлы исходного кода с помощью MATLAB Compiler, чтобы произвести автономное приложение. Распределите последнего конечным пользователям вашего приложения.
Pcode-файл ведет себя то же самое как источник MATLAB, из которого это было произведено. Pcode-файл также запускается на той же скорости как исходный файл. Pcode-файлы намеренно запутываются. Они не зашифрованы. В то время как содержимое в .p
файл затрудняет, чтобы понять, он не должен считаться безопасным. Не рекомендуется что вы Pcode-файлы, чтобы защитить вашу интеллектуальную собственность.
Поскольку пользователи Pcode-файлов не могут просмотреть код MATLAB, полагайте, что обеспечение диагностики позволяет пользователю продолжить в случае ошибки.
Чтобы сгенерировать Pcode-файл, введите следующую команду в Окно Команды MATLAB:
pcode file1 file2, ...
Команда производит файлы, file1.p
, file2.p
, и так далее. Преобразовывать весь
.m
исходные файлы, находящиеся в вашей текущей папке к Pcode-файлам, используйте команду:
pcode *.m
Смотрите pcode
страница ссылки на функцию для описания всех синтаксисов для генерации Pcode-файлов.
Вы вызываете получившийся Pcode-файл таким же образом, вы вызываете MATLAB .m
исходный файл, из которого это было выведено. Например, чтобы вызвать файл myfun.p
Ввод
[out, out2, ...] = myfun(in1, in2, ...);
Вызвать скрипт myscript.p
Ввод
myscript;
Когда вы вызываете Pcode-файл, MATLAB дает ему приоритет выполнения по своему соответствующему .m
исходный файл. Это верно, даже если вы, оказывается, изменяете исходный код в какой-то момент после генерации Pcode-файла. Не забудьте удалять .m
исходный файл прежде, чем распределить ваш код.
Pcode-файлы спроектированы, чтобы быть независимыми от релиза, при котором они были созданы и релиз, в котором они используются (обратная и прямая совместимость). Новыми и функциями MATLAB устаревшими может быть проблема, но это - та же проблема, которая существовала бы, если бы вы использовали исходный входной файл MATLAB. Чтобы зафиксировать ошибки этого вида в Pcode-файле, зафиксируйте соответствующий входной файл MATLAB и создайте новый Pcode-файл.
Pcode-файлы, созданные с помощью MATLAB Version 7.4 и ранее, имеют другой формат, чем созданные с более поздними версиями MATLAB. Эти более старые Pcode-файлы не запускаются в MATLAB 8.6 (R2015b) или позже. Восстановите любые Pcode-файлы, которые были созданы с MATLAB 7.4 или более ранним использованием более поздней версии MATLAB, и затем перераспределяют их по мере необходимости.
Другой способ защитить ваш исходный код состоит в том, чтобы встроить его в независимый исполняемый файл и распределить исполняемый файл, наряду с любыми другими необходимыми файлами, внешним клиентам. У вас должны быть MATLAB Compiler™ и поддерживаемый C или компилятор C++, установленный, чтобы подготовить файлы к развертыванию. Конечному пользователю, однако, не нужен MATLAB.
Чтобы создать автономное приложение для вашего приложения MATLAB, разработайте и отладьте свое приложение, выполняющее обычную процедуру для файлов программы MATLAB. Затем сгенерируйте исполняемый файл, или файлы, следующие инструкциям в, Создают Автономное приложение из MATLAB (MATLAB Compiler).