.
Anmeldung | Registrieren | Hilfe | Posteingang
Suchen
Home Foren News Member Offers Termine Developer Blogs Knowledge Base

Navigation

Navigationslinks überspringen.
Knowledge Base reduzierenKnowledge Base
Tutorials reduzierenTutorials
Webentwicklung
Cliententwicklung
Datenbankentwicklung
IT Professional
Sharepoint
Sprachspezifisch reduzierenSprachspezifisch
C#
Visual Basic
C++
XAML
SQL
JavaScript
Erfahrungsberichte reduzierenErfahrungsberichte
Entwicklersoftware
Bücher
FAQ Grundlagen

Verknüpfungen

  • Knowledge Base durchsuchen
  • Hilfe zur Knowledge Base
  • RSS Feed
  • Twitter

Smartassembly

{smartassembly} macht schon beim ersten Öffnen einen recht guten Eindruck. Die aufgeräumte Oberfläche zeigt auf Anhieb, wo es lang geht.



Was liegt also näher auf der Hand, als gleich ein Projekt anzulegen und aufgefordertermaßen eine Ausgangsassembly zu laden. Vielversprechend ist, dass referenzierte Assemblies, die jedoch nicht gefunden werden können (da sie beispielsweise nicht im Programmverzeichnis liegen) nachgefragt werden und somit ohne Absturz bequem eingebunden werden können.

Verbesserungswürdig hingegen ist es, wenn mehrere Assemblies einzubinden sind, wird beim Öffnen-Dialog nicht das zuvor ausgewählte Verzeichnis vorgeschlagen, sondern das Verzeichnis der ursprünglichen Assembly. Da muss dann umständlich nur den Verzeichnisbaum navigiert werden.

Wurden alle benötigten Assemblies erfolgreich eingebunden, muss eine Destination ausgewählt werden. Dabei handelt es sich um ein Verzeichnis, in dem dsa Resultat abgelegt wird.

Anschließend kann ausgewählt werden, ob und welche Assemblies in das Resultat gemerged werden sollen. Dies ist vor allem dann praktisch, wenn lediglich wenige oder gar nur eine einzige Datei ausgeliefert werden sollen.

Der nächste Schritt besteht darin anzugeben, ob ein Pruning durchgeführt werden soll. Dies bedeutet, dass nicht verwendeter Code entfernt wird.

Ist auch das erledigt, stehen noch viele weitere Funktionen auf dem Programm, die näher inspiziert werden wollen:

- Obfuscation
- Control Flow Obfuscation
- String Encoding
- Other Protections

Gerade die Other Protections sind recht interessant. Hier stehen zwei Auswahlmöglichkeiten zur Verfügung:

- Inkorrekte Metadaten hinzufügen
- Öffnen durch Microsoft IL Disassembler verhindern

Dies sind durchaus zwei Funktionen, die wohl gerne benutzt werden wollen, stellen diese Punkte doch häufige Fragen/Wünsche in diversen Foren da.

Sehr fein ist die Möglichkeit, unbehandelte Exceptions behandeln zu lassen. Hierfür wird ein eigener Report-Dialog eingebunden, eine gewünschte Sprache kann natürlich ausgewählt werden. Auch ist es möglich, eine automatische Behandlung einzufügen. In diesem Fall erscheint kein Dialog.

Auch sehr hilfreich sind die Funktionen Resource Compression und Dependencies Embedding. Dadurch können sehr einfach die eingebundenen Ressourcen verkleinert, als auch Abhängigkeiten eingebunden werden. Dadurch kann das Deployment von Anwendungen sehr stark vereinfacht werden. Zusätzlich verkleinert sich auch die Gesamtgröße des auszuliefernden Paketes.

Dies ist noch nicht alles. Es stehen insgesamt noch drei weitere Funktionen zur Verfügung:

- Other Optimizations (Verbesserung Memory Management, etc.)
- Debugging Informationen generieren
- Signieren / Strong Name

Wurden alle Konfigurationen getroffen, kann ein Build gestartet werden. Dies dauert je nach Angaben einige Sekunden bis Minuten, kann aber übersichtlich verfolgt werden. Alle Punkte werden angezeigt und so kann jederzeit nachvollzogen werden, in welchem Status sich {smartassembly} gerade befindet und welcher Task aktuell abgearbeitet wird.

Nach der erfolgreichen Erstellung wird in einer klaren Übersicht das Ergebnis der einzelnen Schritte dargestellt.



Darauf ist schön zu sehen, was mit welcher Effektivität in den einzelnen Tasks erledigt wurde.

Fazit

{smartassembly} bietet sehr viele hilfreiche Funktionen, die für den .NET Entwickler durchaus von Bedeutung sind und auch eingesetzt werden sollen. Die klare und intuitive Verwendung vereinfacht das Anwenden derartiger Tools ungemein. Hilfe wird keine verwendet, da die einzelnen Funktionen ohnehin beschrieben sind und somit der nächste Schritt immer klar definiert ist.

Insgesamt eine sehr empfehlenswerte Software.
von Norbert Eder, 02.06.2008 zugeordnet zu Entwicklersoftware , Erfahrungsberichte .

Kommentare

Es sind noch keine Kommentare vorhanden.

Eigener Kommentar

Sie müssen angemeldet sein, um ein Kommentar zu erstellen.
  • Schwierigkeit: Einsteiger
  • Views: 1653
  • Zur Druckversion
  • Artikel von Norbert Eder

Kick it on dotnet-kicks.de

Artikel

Autor

Kick it!

Wenn ihnen dieser Artikel gefällt, bitte "kicken" sie ihn.

WPF Forum | ASP.NET Forum | ASP.NET MVC Forum | Silverlight Forum | Windows Phone 7 Forum | SharePoint Forum | Dotnet Jobs | Dotnet Termine | Developer Blogs | Dotnet News

Das Team | Regeln | Impressum