Possible reasons are:
This third-party component is a commercial component, which is defined in the main usage class of the component
LicenseProvider (typeof (LicFileLicenseProvider ))
This Attribute.
When VS2005 detects this class during compilation, it will check that the component uses the LicFileLicenseProvider attribute, indicating that a component uses to save license auxiliary information in license. in the licx file, this file is saved in the Properties folder of Solution Explorer in vs2005.
The content of this file is actually a reference. It stores the namespace, class name, file name, culture, and PublicKeyToken information of the main class used by your third-party component, this file is automatically generated.
If this information does not match the internal content of the dll, lc.exe will see this error message.
The reason for this information is that you used the beta version of the commercial component in the project, and the cracked version of the commercial component used during the release. When most commercial components are cracked, the strong name signature will disappear, so the cracked components are completely different from the reference information of the original test component. Therefore, during each compilation, vs2005 will call lc (license compiler) before automatically calling the language compiler, and a-1 error will occur.
The solution is to set the license under the Properties file. licx is deleted and re-compiled. If this problem persists, you must use lidism to translate your cracked version into the il language, and then use ilasm to re-compile it into the dll, add/key = [your strong name file] during compilation. add a strong name signature to the snk parameter and use vs2005 to re-compile it.