Mods, I don't think this is the correct forum for this, so please move it as you see fit.

Hi all,

I am currently in talks to license a bunch of our source code to one of our customers. Since there would be monthly fees involved, I need to make sure that if we stop getting paid they can no longer use the code.

My idea is to take out an import part of the code (that they won't need to modify) and put it in a separate class library along with the code we use for our licensing, obfuscate the library and give it to them. 95% of what they will be doing would revolve around the methods in this library and with the licensing code in it, I can always turn them off on our licensing server.

What I am unclear of is how to obfuscate the library yet still provide entry points for the public methods.

I have used the System.Reflection. <Obfuscation(Exclude:=True)> on a couple of Shared methods, but when I create a new project that references the obfuscated DLL, I don't see the methods - of course I may not be doing something quite right yet also.

Does anyone have any ideas about how to go about what I am trying to do?
Thanks
Kevin