Is there a way to write protect an m file.

22 vues (au cours des 30 derniers jours)
Govind
Govind le 6 Nov 2024
Modifié(e) : Bruno Luong le 6 Nov 2024
Hi ,
I have a project with multiple m files. And I am told that I need to write protect it, so that no one can change it. Is there any way to write protect an m file. Thank you.
  2 commentaires
Stephen23
Stephen23 le 6 Nov 2024
"Is there any way to write protect an m file"
An Mfile is just a text file, so you can use whatever tools your OS has for preventing text files from changing.
Bruno Luong
Bruno Luong le 6 Nov 2024
Modifié(e) : Bruno Luong le 6 Nov 2024
Note that even if the mfile is written protected, someone can copy it elsewhere, modify it and easily make MATLAB to use a modified version by addpath command. Those so called protections are then very weak.
pcode is a little bit harder to crack. You probably have to pcode not only the sensitive mfiles but all the caller function as well.

Connectez-vous pour commenter.

Réponses (2)

Bruno Luong
Bruno Luong le 6 Nov 2024
You could transform mfile to pfile than depioy it. See pcode command

Shashi Kiran
Shashi Kiran le 6 Nov 2024
Here are some methods to protect your files from being edited:
1. Protecting Code with P-code Files:
  • MATLAB allows you to secure your code using P-code files, which prevents users from viewing or editing the source code.
  • To do this, navigate to the directory containing your .m files and add them to the MATLAB path.
  • Then, use the "pcode" function to create a P-code file:
pcode file1.m file2.m
Refer this for more information about P-code files
2. File System Permissions:
  • You can change the file system permissions using the "fileattrib" command in MATLAB to make the files read-only.
  • By using '-w', you remove the write permission, effectively making the file read-only.
fileattrib('file1.m', '-w')
Refer this for more information about "fileattrib"
Hope this helps.

Catégories

En savoir plus sur File Operations dans Help Center et File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by