mscorlib 2.0.0.0 4.0.0.0 System.Attribute System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false) System.Runtime.InteropServices.ComVisible(true)

The and attributes provide a way for assembly authors to annotate their binaries so that obfuscation tools can process them correctly with minimal external configuration.

Applying this attribute to an assembly tells the obfuscation tool to use its default rules for the assembly type.

Applying this attribute does not automatically obfuscate the assembly. Applying the attribute is an alternative to creating a configuration file for the obfuscation tool. That is, it merely provides instructions for an obfuscation tool. Microsoft recommends that vendors of obfuscation tools follow the semantics described here. However, there is no guarantee that a particular tool follows Microsoft recommendations.

You can apply to types within an assembly, and to members on those types. The innermost attribute controls the way an obfuscation tool treats any particular code entity.

Instructs obfuscation tools to use their standard obfuscation rules for the appropriate assembly type.

- Constructor
  2.0.0.0
  4.0.0.0

  Mark assemblies as private if they are used only by your application, and are not libraries to be used by other software. Generally, marking an assembly as private tells an obfuscator that it can obfuscate the names of all methods, including public methods, as part of obfuscating an application. If an assembly is public, an obfuscator should not obfuscate the names of public members.

  Applying this attribute does not automatically obfuscate the assembly. Applying the attribute is an alternative to creating a configuration file for the obfuscation tool. That is, it merely provides instructions for an obfuscation tool. Microsoft recommends that vendors of obfuscation tools follow the semantics described here. However, there is no guarantee that a particular tool follows Microsoft recommendations.

  Initializes a new instance of the class, specifying whether the assembly to be obfuscated is public or private.

  true if the assembly is used within the scope of one application; otherwise, false.
- Property
  2.0.0.0
  4.0.0.0
  System.Boolean To be added.

  A private assembly is used only by the application of which it is a part, and not by other software.

  Applying this attribute does not automatically obfuscate the assembly. Applying the attribute is an alternative to creating a configuration file for the obfuscation tool. That is, it merely provides instructions for an obfuscation tool. Microsoft recommends that vendors of obfuscation tools follow the semantics described here. However, there is no guarantee that a particular tool follows Microsoft recommendations.

  Gets a value indicating whether the assembly was marked private.

- Property
  2.0.0.0
  4.0.0.0
  System.Boolean To be added.

  Attributes should not be stripped if your library will be included as part of another application, and obfuscated as part of that application.

  Specifying that obfuscation tools should strip the does not affect instances of that have been applied to types and members within the assembly.

  Applying this attribute does not automatically obfuscate the assembly. Applying the attribute is an alternative to creating a configuration file for the obfuscation tool. That is, it merely provides instructions for an obfuscation tool. Microsoft recommends that vendors of obfuscation tools follow the semantics described here. However, there is no guarantee that a particular tool follows Microsoft recommendations.

  Gets or sets a value indicating whether the obfuscation tool should remove the attribute after processing.