We use the standard .NET component model licensing infrastructure to implement licensing support in our products. This page serves as an explanation of how the process works. In early versions of Visual Studio .NET this infrastructure was not without a few minor bugs, so some troubleshooting advice is also included.
How Licensing Works
When you install one of our products, product activation contacts our website to validate your license. Once validated a setting is stored on your computer to indicate the product is correctly licensed.
Upon opening a designer containing our products in Visual Studio, or adding one of our products to an existing designer, Visual Studio detects a licensed component and creates (or adds to) a file called licenses.licx in your solution. If you are using VS2005 or later this file is in the Properties folder, otherwise it can be found in the root if "show all files" is turned on. The file contains a list of types that are licensed. At compile time, Visual Studio validates all these licensed components and embeds licensing information into the final assembly.
Troubleshooting
Q. After upgrading to a new version of a product, I compile and run my solution and I see "evaluation" markers. What's wrong?
After upgrading you should open at least one form that uses our products in design mode. This forces Visual Studio to update its list of licensed components and ensures your license will be correctly embedded in your executable at compile time.
Q. I followed the above answer but it didn't help. There is no licenses.licx file in my project. What's wrong?
This can occur in all versions of Visual Studio, but most commonly 2002 and 2003. A bug in VS can result in a failure to generate the licenses.licx file mentioned above. It's easy to add the file yourself, though, so don't worry. You need to add a new item to your project - select text file and call it licenses.licx. Open it for editing and then add a line for each component you're using, in the format [type],[assembly] for each line.
For example, for our SandDock for Windows Forms product the following two lines would need to be added. Contact support for other products and we can help you.
TD.SandDock.SandDockManager,SandDock
TD.SandDock.DockContainer,SandDock
If you are using one of our WPF products in Visual Studio 2005 or pre-RTM builds of Visual Studio 2008, this environment will not automatically create your licenses.licx file either. Follow the steps above, and for our SandDock for WPF product, put this one line in the file:
Divelements.SandDock.DockSite,Divelements.SandDock
Q. What if I need to use your product in a DLL which will, in turn, be used by another EXE?
This will work just fine. Visual Studio will create a licenses.licx file in your DLL (if it doesn't, simply follow the instructions above) and that will be picked up at runtime by the licensing engine. There is no need to modify your entry executable.
|