CA1410: COM registration methods should be matched
A type declares a method that is marked with the System.Runtime.InteropServices.ComRegisterFunctionAttribute attribute but does not declare a method that is marked with the System.Runtime.InteropServices.ComUnregisterFunctionAttribute attribute, or vice versa.
For Component Object Model (COM) clients to create a .NET Framework type, the type must first be registered. If it is available, a method that is marked with the ComRegisterFunctionAttribute attribute is called during the registration process to run user-specified code. A corresponding method that is marked with the ComUnregisterFunctionAttribute attribute is called during the unregistration process to reverse the operations of the registration method.
The following example shows a type that violates the rule. The commented code shows the fix for the violation.
Imports System Imports System.Runtime.InteropServices <Assembly: ComVisibleAttribute(True)> Namespace InteroperabilityLibrary Public Class ClassToRegister End Class Public Class ComRegistration <ComRegisterFunctionAttribute> _ Friend Shared Sub RegisterFunction(typeToRegister As Type) End Sub ' <ComUnregisterFunctionAttribute> _ ' Friend Shared Sub UnregisterFunction(typeToRegister As Type) ' End Sub End Class End Namespace