Sometimes the project shows a nag screen with a message that "This dialog box will not be shown if you recompile the program using licensed version of the product" This can be due to different build of the same control, which can be due to
-
Different build installed and registered on the machine
-
Any other 3rd party software using the same control with a different build
Hence, if a 3rd party application is using a different build than the one installed on your machine, then you need to either ask your vendor to give you the application with the same build as on your machine or you need to get that specific build licensed and registered on your machine as the one used in the 3rd party application. Otherwise you need to check for the duplicate build on the machine and manually un-register and delete it. If the nag is coming for VSFlexGrid 8.0(Unicode/Light)
-
Look for vsflex8u.ocx files on the machine [Or the exact file name can be found here]
-
Unregister them by using regsvr32 -u vsflex8u.ocx and delete it.
Expired License
Sometime the nag screen shows that the license expired in a specific year and build like "License expired in 2003-Q4". In this case you need to check your serial key and the build number showing in the license screen, it indicates that the build registered on your machine is not appropriate with the license key used for activation. A license say for e.g. VSFlexgrid (1240200-A8-xxxxxx) is valid for releases between 2002.Q4 to 2003.Q3. So if you you are using the installer flex8_Q0403.exe (which is 2003.Q4 release), the mentioned key will not work. Hence you have to make sure that the build used is correct with the serial key you have.
License Nag in VC++/MFC Applications
For C++/MFC application/projects the licensing information is embedded in the dialog resources for each dialog that contains a ActiveX control. The sample programs have no specific licensing data, so the licensing data needs to be refreshed from the installed licensed version. To fix this:
-
In each dialog that contains a ActiveX control, use Visual Studio resource file editor to delete the existing control, then choose “Insert ActiveX Control…” from the dialog editor context menu, and choose the ActiveX version you need.
-
Size and place the control to match the position of the old version that you deleted, and rebuild your project.
-
The license “nag” should no longer appear when running the program.
License Nag in .NET Application
Usually the ActiveX runtime license appears to be added to the resources of the form to which it is added. Specifically, it is embedded somewhere in the Form.resx file, and is marked as OcxState for the control. This contains properties and apparently the license. There can be few issues related to functionality and licensing as the platform is totally different as well as the licensing mechanism used in .NET. Also, you may just delete the OcxState property in the Form.resX file and then rebuild the project. It would recreate the Form.resX-file and, when you would run it, the license warning gets removed.
License Nag on Client Machine
If you get nag screen on the client machine, then please check if the package is created correctly. The ocx and dll files carries the license information to client machine. So if you are getting nag screen, then these ocx and dll files does not have proper information for license on development machine, or they are not placed in the System32 folder. Ensure that ocx/dll files for ActiveX control is in System32 folder and licensed properly. Then create a new package and ensure that you are including the ocx/dll files in the package. You may also try the same on a clean test machine to see if that works fine as in that case problem can be with duplicate builds of the same control on client end which can be resolved using the solutions above.