Auteur de questions
We have a password protected program that ships with a set of .wmv video tutorials. From within the app the wmv files are played by making a call to System::Diagnostics::Process::Start(filename) and the default viewer will play the file.
In order to protect proprietary information, we need to prevent the .wmv files from being copied and played on computers that do not have our software installed. Password protecting the .wmv files would solve the problem, but wmv files do not support password protection.
I am looking for ideas and suggestions to solve this issue.
Thanksmardi 6 mars 2012 16:28
Toutes les réponses
You can include those .wmv files as an embedded resource so that they will compiled to your .exe/dll. Run times you need to read from resource and convert them back to .wmv and run it. At the end you need to delete those files.
Option 2 You can include all .wmv as a password protected .zip file. By program you can unzip by supplying password to a temp folder and run it.
Lingaraj Mishramercredi 7 mars 2012 08:27
Thanks for the suggestions. The files are high definition videos by necessity therefore they are very large. The combined size is about 1.5Gig so I felt there may be problems if I include them as resources.
I considered using password protected zip files, but since I have to unzip them into a temp folder, users can easily copy them from the temp folder.
I also considered encrypting them with my own algorithm then decripting back to a .wmv that users can then see. This has the same flaw as above, users can copy them from the temp folder.
The only other idea I have is to encrypt the files and write my own .wmv viewer that decrypts as it runs. That however is a lot of work.
THanks for the feedback,
RudySdimanche 11 mars 2012 21:32
Thanks for the suggestion. I see how to encrypt and decrypt the file. What I don't see is how to decrypt the file and steam the output to something like Windows Media Player without creating a decrypted file. The existence of a decryped file while viewing enables the user to make a copy.
RudySdimanche 18 mars 2012 19:27