ObfuscateAssemblyAttribute Класс

Определение

Указывает средствам запутывания, что следует использовать подходящие правила запутывания для соответствующего типа сборки.Instructs obfuscation tools to use their standard obfuscation rules for the appropriate assembly type.

public ref class ObfuscateAssemblyAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false, Inherited=false)]
public sealed class ObfuscateAssemblyAttribute : Attribute
public sealed class ObfuscateAssemblyAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ObfuscateAssemblyAttribute : Attribute
type ObfuscateAssemblyAttribute = class
    inherit Attribute
Public NotInheritable Class ObfuscateAssemblyAttribute
Inherits Attribute
Наследование
ObfuscateAssemblyAttribute
Атрибуты

Примеры

В следующем примере кода показана закрытая сборка, помеченная ObfuscateAssemblyAttribute.The following code example shows a private assembly that has been marked with the ObfuscateAssemblyAttribute. Свойство StripAfterObfuscation false, чтобы средство запутывания не было удалять атрибут после обработки.The StripAfterObfuscation property is false, to prevent the obfuscation tool from stripping the attribute after processing.

Пример кода, демонстрирующий использование ObfuscateAssemblyAttribute с ObfuscationAttribute, см. в разделе класс ObfuscationAttribute.For a code example that shows the use of ObfuscateAssemblyAttribute with ObfuscationAttribute, see the ObfuscationAttribute class.

using System;
using System.Reflection;

[assembly: ObfuscateAssemblyAttribute(true,
    StripAfterObfuscation=false)]
Imports System.Reflection

<Assembly: ObfuscateAssemblyAttribute(False, _
    StripAfterObfuscation:=False)>

Комментарии

Атрибуты ObfuscationAttribute и ObfuscateAssemblyAttribute предоставляют авторам сборок возможность закомментировать свои двоичные файлы, чтобы средства запутывания могли правильно обрабатывать их с минимальной внешней конфигурацией.The ObfuscationAttribute and ObfuscateAssemblyAttribute 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.

Можно применить ObfuscationAttribute к типам в сборке и к членам этих типов.You can apply ObfuscationAttribute 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.

Конструкторы

ObfuscateAssemblyAttribute(Boolean)

Инициализирует новый экземпляр класса ObfuscateAssemblyAttribute, определяя, должна ли быть подлежащая запутыванию сборка открытой или закрытой.Initializes a new instance of the ObfuscateAssemblyAttribute class, specifying whether the assembly to be obfuscated is public or private.

Свойства

AssemblyIsPrivate

Возвращает значение Boolean, указывающее, отмечена ли данная сборка как закрытая.Gets a Boolean value indicating whether the assembly was marked private.

StripAfterObfuscation

Возвращает или задает значение Boolean, указывающее, должно ли средство запутывания удалить данный атрибут по окончании его обработки.Gets or sets a Boolean value indicating whether the obfuscation tool should remove the attribute after processing.

TypeId

В случае реализации в производном классе возвращает уникальный идентификатор для этого атрибута Attribute.When implemented in a derived class, gets a unique identifier for this Attribute.

(Унаследовано от Attribute)

Методы

Equals(Object)

Возвращает значение, показывающее, равен ли экземпляр указанному объекту.Returns a value that indicates whether this instance is equal to a specified object.

(Унаследовано от Attribute)
GetHashCode()

Возвращает хэш-код для этого экземпляра.Returns the hash code for this instance.

(Унаследовано от Attribute)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
IsDefaultAttribute()

При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(Унаследовано от Attribute)
Match(Object)

При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Унаследовано от Attribute)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

Явные реализации интерфейса

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.Maps a set of names to a corresponding set of dispatch identifiers.

(Унаследовано от Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Возвращает сведения о типе объекта, которые можно использовать для получения сведений о типе интерфейса.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Унаследовано от Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Унаследовано от Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Предоставляет доступ к открытым свойствам и методам объекта.Provides access to properties and methods exposed by an object.

(Унаследовано от Attribute)

Применяется к

Дополнительно