Ich habe eine VS.NET 2008-Lösung, die ein Setup-Projekt enthält. Dieses Setup-Projekt nimmt die Ausgabe meines anderen Projekts (in derselben Lösung) und erstellt ein MSI. So weit, so gut ... Ich möchte, dass die im MSI enthaltenen Assemblys verschleiert werden. Diese Verschleierung selbst ist einfach, aber Wie kann ich diesen Vorschritt (Verschleierung) in das MSI-Gebäude einführen ? Hat jemand eine Idee?
Danke!
Verwenden Sie ein Build-Tool wie Finalbuilder , um diesen Prozess zu automatisieren.
ZB Build-Assemblys, dann verschleiern sie und schließlich das Setup-Projekt.
Wenn Sie Dotfuscator Professional verwenden, können Sie dies leicht erreichen, da es mit einem Visual Studio-Projekt geliefert wird, das bei der Installation zu Ihrem System hinzugefügt wird.
Sie müssen lediglich ein neues Dotfuscator-Projekt zu Ihrer Lösung hinzufügen, die Ausgaben aus Ihren anderen Projekten als Inputs zum Dotfuscator-Projekt hinzufügen (über die Funktion Assembly hinzufügen / Projekt-Output hinzufügen), die erforderlichen Verschleierungseinstellungen vornehmen und Ändern Sie dann die Eingabe für Ihr Setup-Projekt als Dotfuscator-Projekt. Wenn Sie jetzt Ihre Lösung erstellen, werden Ihre Code-Dateien kompiliert, dann verschleiert und dann an das Setup-Projekt übergeben, das in das MSI integriert wird.
Der Obfuscator muss die MSBuild-Integration unterstützen, damit dies funktioniert, so dass die Build-Ausgabe des Compilers verschleiert und als Eingabe an das MSI-Projekt weitergegeben werden kann.
Crypto Obfuscator ist ein solches Tool, das diese Art von Szenario unterstütztEazfuscator.NET wurde speziell für dieses Szenario entwickelt. Um Ihre Assemblys zu verschleiern, bevor sie zu MSI gehen, tun Sie einfach Folgendes:
Release
configuration automatisch verschleiert und in Ihr MSI-Paket gebündelt. Einige andere Obfuscatoren handhaben das auch. Beispiel: Dotfuscator stellt den Verschleierungsprojekttyp für Visual Studio bereit, in dem Sie Eingaben und Ausgaben definieren und so einen Build erstellen können Pipeline. Die Pipeline kann die Ausgabe eines Assembly-Projekts abrufen, sie verschleiern und dann an das Setup-Projekt übergeben.
Ich würde WiX oder etwas Ähnliches (etwas anderes Erstellungswerkzeug) betrachten, um die MSI-Datei zu erstellen. Sie können die Windows-Tools verwenden, um das MSI zu dekompilieren und dann zu verschleiern und in das MSI zu laden.
Eine weitere Option ist das Hinzufügen eines Verschleierungstools zum Erstellungsprozess. Ich habe diesen Post-Build mit CodeVeil gemacht. Wenn Sie dies in die Post-Build-Schritte aller Projekte verzweigen können, ohne das Setup-Projekt (das zuletzt erstellt wurde), sollten Sie in der Lage sein, dies zu tun. Da ich nicht viel mit dem Setup-Projekt gearbeitet habe, bin ich mir nicht sicher, ob das funktioniert, aber ich sehe keinen Grund, warum es nicht funktionieren sollte.
Tags und Links installer windows-installer .net-3.5 obfuscation