Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
.jpg)
.NET Framework, Version 2.0, bietet zwei neue benutzerdefinierte Attribute, die ein automatisches Verbergen von Assemblys erleichtern sollen, ohne Konfigurationsdateien einrichten zu müssen. In diesem Abschnitt wird erläutert, wie Sie diese Attribute mit Dotfuscator verwenden können. Dabei wird vorausgesetzt, dass Sie mit benutzerdefinierten Attributen und deren Anwendung in Ihrer Entwicklungssprache vertraut sind.
System.Reflection.ObfuscateAssemblyAttribute
Dieses Attribut wird auf Assemblyebene verwendet, um Dotfuscator anzuweisen, wie die Assembly insgesamt verborgen werden soll. Wenn Sie die AssemblyIsPrivate-Eigenschaft auf false festlegen, weisen Sie Dotfuscator an, die Assembly im Bibliothekenmodus auszuführen. Wenn Sie die Eigenschaft auf true festlegen, führt Dotfuscator die Assembly nicht im Bibliothekenmodus aus und benennt so viele Elemente wie möglich um, einschließlich öffentlicher Typen und Member.
System.Reflection.ObfuscationAttribute
Dieses Attribut wird für Typen und ihre Member verwendet und weist Dotfuscator an, wie das Element verborgen werden soll.
Feature-Eigenschaft
Diese Zeichenfolgeneigenschaft besitzt den Standardwert all. Sie wird bereitgestellt, damit Sie mehrere unabhängige Verbergungstransformationen konfigurieren können, indem Sie ein Element mit mehreren ObfuscationAttributes markieren, von denen jedes eine andere Featurezeichenfolge verwendet.
Dotfuscator ordnet der Zeichenfolge renaming die Featurezeichenfolgen default und all zu.
Die folgende Liste enthält andere von Dotfuscator unterstützte Featurezeichenfolgen.
| Featurezeichenfolge | Aktion |
|---|---|
| renaming | Attribut konfiguriert Umbenennung |
| controlflow | Attribut konfiguriert Verbergen der Ablaufsteuerung |
| stringencryption | Attribut konfiguriert Zeichenfolgenverschlüsselung |
| trigger | Attribut konfiguriert Pruning durch Markieren des angegebenen Elements als Einstiegspunkt |
| conditionalinclude | Attribut konfiguriert Pruning durch bedingtes Einschließen des angegebenen Elements |
Sofern erforderlich, können Sie der Zeichenfolge renaming auf der Registerkarte Setup im Eigenschaftenblatt Featurezuordnungszeichenfolgen andere Featurezeichenfolgen zuordnen.
Dotfuscator ignoriert Attribute mit unbekannten Featurezeichenfolgen.
Exclude-Eigenschaft
Diese boolesche Eigenschaft besitzt den Standardwert true. Wenn der Wert true lautet, wird das markierte Element von den Transformationen ausgeschlossen, die durch die Feature-Eigenschaft abgeleitet werden können. Wenn der Wert false lautet, wird das markierte Element eingeschlossen.
Die aktuelle Version von Dotfuscator unterstützt für eine bestimmte Transformation nur einen Wert der Exclude-Eigenschaft. Dotfuscator ignoriert Regeln, die nicht unterstützte Exclude-Werte enthalten. Die folgende Liste enthält eine Zusammenfassung der unterstützten Werte.
| Featurezeichenfolge | Unterstützter Exclude-Wert |
|---|---|
| renaming | True |
| controlflow | True |
| stringencryption | False |
| trigger | False |
| conditionalinclude | False |
ApplyToMembers-Eigenschaft
Diese boolesche Eigenschaft besitzt den Standardwert true. Wenn das Attribut auf eine Assembly oder einen Typ angewendet wird, gibt der Wert true an, dass der Vorgang auch auf alle Member (einschließlich geschachtelter Typen) der ausgewählten Typen angewendet werden soll. Wenn der Wert false lautet, wird der Vorgang nur auf die Typen und nicht auf ihre Member (und geschachtelten Typen) angewendet.
Aktivieren oder Deaktivieren des deklarativen Verbergens
Dotfuscator ermöglicht es Ihnen, deklaratives Verbergen für alle Eingabeassemblys zu aktivieren bzw. zu deaktivieren. Wenn es nicht aktiviert ist, ignoriert Dotfuscator benutzerdefinierte Attribute, die sich auf das Verbergen beziehen. Sie können es auch für bestimmte Assemblys ausschalten.
Entfernen von Attributen für deklaratives Verbergen
Durch Dotfuscator können die Verbergungsattribute nach abgeschlossener Verarbeitung entfernt werden, sodass die Ausgabeassemblys keine Hinweise darauf enthalten, wie die Verbergung erfolgt ist. Beide deklarativen Verbergungsattribute besitzen eine boolesche StripAfterObfuscation-Eigenschaft, die den Standardwert true aufweist.
Dotfuscator verfügt auch über Konfigurationseinstellungen, die mit dem Wert der StripAfterObfuscation-Eigenschaft zum Zeitpunkt des Verbergungsvorgangs interagieren.
Die Einstellungen, die Einfluss auf das Entfernen von Attributen für deklaratives Verbergen und deren Interaktion haben, sind in der folgenden Tabelle zusammengefasst.
| Attribute werden von Dotfuscator berücksichtigt | Attribute werden von Dotfuscator entfernt | StripAfterObfuscation-Eigenschaft des Attributs | Ergebnis |
|---|---|---|---|
| Ja | Ja | True oder False | Attribut wird entfernt |
| Ja | Nein | True | Attribut wird entfernt |
| Ja | Nein | False | Attribut wird beibehalten |
| Nein | Ja | True oder False | Attribut wird entfernt |
| Nein | Nein | True oder False | Attribut wird beibehalten |
Verwenden von Featurezuordnungszeichenfolgen
In Dotfuscator können Sie Werte, die in der Feature-Eigenschaft eines Verbergungsattributs enthalten sind, von Dotfuscator unterstützten Featurezeichenfolgen zuordnen.
Beispielsweise können Sie die Anwendung mit Verbergungsattributen markieren, die auf ein Feature mit dem Namen testmode verweisen. Dotfuscator erkennt diese Featurezeichenfolge nicht standardmäßig und ignoriert die Attribute daher. Wenn Dotfuscator diese Attribute später verwenden soll, um das Umbenennen und das Verbergen der Ablaufsteuerung zu konfigurieren, können Sie die Featurezeichenfolge testmode den in Dotfuscator integrierten Zeichenfolgen renaming und controlflow zuordnen.
© 2002-2007 PreEmptive Solutions. Alle Rechte vorbehalten.