0

I have an external program (XYZ) which I have used to build a model of a certain physical process and save it to a file to deliver to a client. The model file contains intellectual property that belongs to my company.

The program gives me an ability to password the model file and also lock the model file to a specific computer using hardware lock (diskid, cpuid, IP addresses etc.) so once I set the hardware lock the model file will only open on one computer that has the hardware locks, however there is a fundamental flaw in its design which the developer of the program has overlooked. I can open my password protected file and copy the content to a new (non-protected) instance of the same program. This effectively removes all the protection and the user is able to save the contents of the model to a new file without any password protection or hardware locks. They can then distribute this file freely.

I am looking for a way to prevent multiple instances of the program (XYZ) so that the user cannot copy-paste the content of the model file to another model file. Fortunately, the content can only be pasted in XYZ program so all I need to do is to prevent another instance of this program to prevent them from copying the contents of my model.

Let’s think of this as a password protected Word file, once I enter the password the content is in front of me. I can then copy the text and past it in another Word file, notepad or any other way and I may no longer even need the original password protected Word file. Fortunately, in my case the "text" can only be pasted again in MS Word, not elsewhere so all I want to do is prevent another instance of Word from opening and I should be in business.

I have tried exploring the registry options (regedit) but have not been able to find a solution. Using a batch file to check multiple instances is not a viable solution as the user can simply open a new instance of the program (XYZ) and copy-paste the contents to the new model file. I am looking for something like "Single Instance Application" available in VS, however since this is an external program I do not have access to it. I need to find an external way of doing it. I was hoping there is some option within the registry or some other way to do it. Thank you very much in advance.

Quark
  • 49
  • 1
  • 14
  • Strange requirement to begin with. What if that unique PC breaks or is stolen? You lose all ability to ever use that file again. Single point of failure = bad idea, bad design. Having said that, you have two options: (a) contact vendor of XYZ and have them 'fix' it, or (b) create a Clipboard Watcher that erases the Clipboard as soons as 'suspect' content is put on it, although you'll lose copy/paste fuctionality in all of XYZ. – Peter B Nov 09 '16 at 09:16
  • I will retain a copy of that file without any protection and/or a file locked to my computer, so if the client PC breaks I can provide them with another copy of the model file. The vendor of XYZ cannot be bothered, even if they do look into it will be weeks or months before I get any response, while I need to deliver the model file in a few days. I will try exploring the Clipboard Watcher option. Thank you very much. – Quark Nov 09 '16 at 09:22

0 Answers0