Abhängig davon, wie die Anwendung strukturiert ist, stehen Ihnen verschiedene Optionen zur Verfügung.
Der EXE Datei kann eine fest programmierte Kommandozeile übergeben werden. Dabei kann die Variable %path% verwendet werden, die den Pfad einsetzt, auf dem die EXE gestartet wird.
Die Kommandozeile kann auch Encoding Parameter enthalten (siehe unten).
Diese Option is nur notwendig bei der Einstellung: EXE Datei auf temporärem Verzeichnis der Festplatte starten oder wenn Sie einen zusätzlichen Schutzmechanismus nutzen wollen.
Encoding Parameter
Wählen Sie beliebige 3-stellige Zahlen. Die Zahlen sollten pro Projekt unterschiedlich sein.
Pfad
Pfad und Dateinamen der Text Datei. Anstelle den Pfad fix zu hinterlegen, benutzen Sie eine der folgenden Variablen.
%1% = Benutzer Dokument Verzeichnis - z.B.. c:\users\admin\documents
%2% = AppData Roaming Verzeichnis - z.B.. c:\users\admin\AppData\Roaming
Die Hauptanwendung, die geschützt werden soll, kann entweder mit Kommandozeilen Parameter aufgerufen werden oder es wird zusätzlich eine Text Datei zur Verfügung gestellt. Beide enthalten verschlüsselte Werte. Die Werte ändern sich bei jedem Programmstart, da Sie abhängig der System Zeit kalkuliert werden. Die Hauptanwendung muss die Werte vergleichen und startet nur, wenn die Überprüfung korrekt ist.
Die Kommandozeile ist eine Alternative sofern eine Text Datei nicht gelesen werden kann. Wird kein Pfad / Dateiname angegeben, dann werden die Werte per Kommandozeile übergeben.
Wie funktioniert der Schutz?
•Die All-In-One Player Anwendung prüft die Lizenzierung und den Kopierschutz •Wenn alles in Ordnung ist, wird die Textdatei erstellt (sofern konfiguriert) und die Hauptanwendung (Startdatei) wird gestartet und eine Kommandozeile übergeben (sofern konfiguriert) •Die Werte in der Textdatei oder in der Kommandozeile werden bei jedem Programmstart basierend auf die Uhrzeit und den definierten Encoding Parameter neu kalkuliert •Die Hauptanwendung liest die Text Datei, löscht diese und analysiert die Werte (Formel siehe unten) aus der Textdatei oder von der Kommandozeile •Die Hauptanwendung startet nur, wenn die Werte gültig sind
Verschlüsselte WerteDie Textdatei oder die Kommandozeile enthält zwei verschlüsselte Werte (Zeit1 und Zeit2). Die Werte sind durch ein Leerzeichen getrennt.
Beispiel: 1879 1996
Die zwei Werte werden während dem Programmstart basierend auf den Werten der zwei Encoding-Parameter und der Systemzeit berechnet. Da jedes Projekt eigene Encoding-Parameter hat, kann das Ergebnis nie kalkuliert werden, wenn die Encoding-Parameter unbekannt sind. Es werden zwei Werte benötigt, da der Start einer Anwendung einige Zeit dauern kann - Bsp: die Anwendung wird um 08:15 gestartet aber es benötigt 30 Sekunden, bis die Textdatei gelesen werden kann und die Uhrzeit ist dann 08:16. Der Wert von Zeit1 wird basierend auf der Zeit berechnet, wann die Textdatei erstellt wurde und der Wert Zeit2 ist eine Minute später.
Sie können den Wert zur Überprüfung mit der folgenden Formel ermitteln.
Trunc((MMHH * Encoding Parameter1)/ Encoding Parameter2)
MM = Minute (muss zweistellig sein) HH = Stunde (muss zweistellig sein)
Trunc = Nachkommastellen abschneiden
Vergleichen Sie das Ergebnis mit dem Wert von Zeit1 und Zeit2 aus der Textdatei oder Kommandozeile. Entweder Zeit1 oder Zeit2 muss mit dem berechneten Wert identisch sein.
Beispiel Die Zeit ist 8:16
(1608 * 892) / 763 = 1879,86369...
Wert nach Abschneiden der Nachkommastellen: 1879
Vergleichen Sie den Wert, den Ihre Anwendung ermittelt hat mit beiden Werten aus der Textdatei oder der Kommandozeile. Ein Wert muss dem berechneten Wert entsprechen.
Wenn Ihre Anwendung typischerweise länger als eine Minute zum Start benötigt, erstellen Sie eine zweite Berechnung indem Sie eine Minute abziehen - Bsp: die Uhrzeit ist 08:16 - kalkulieren Sie dann den Wert für 08:16 UND 08:15. |
•Details EXE Datei in der sicheren virtuellen Zone ausführen
•Details EXE Datei auf temporärem Verzeichnis der Festplatte starten
Diese Optionen sind je nach gewähltem Schutztyp (Virtuelle Zone / temporäres Verzeichnis) verfügbar oder deaktiviert.
Alle Dateien werden auf die Virtuelle Zone / temporäres Verzeichnis exportiert. Danach wird die als Startdatei markierte EXE Datei gestartet. Ist diese Option nicht angehakt, wird nur die Startdatei exportiert.
Nachdem die als Startdatei markierte EXE Datei beendet wird, werden alle Dateien auf dem temporären Verzeichnis gelöscht. Wenn die virtuelle Zone genutzt wird, erfolgt dies automatisch da die virtuelle Zone im Hauptspeicher komplett nach Programmende gelöscht wird.
Diese Option extrahiert die Dateien auf das Verzeichnis, vom dem aus der All-In-One Player gestartet wird. Danach ist die Datei nicht mehr geschützt.
Eine Möglichkeit wäre z.B., einen Installer zu schützen. Der Kunde müsste zunächst die Software aktivieren. Danach wird der Installer ausgepackt und gestartet. Die installierten Dateien sind danach nicht mehr geschützt.
Die virtuelle Zone ermöglicht es, vor dem Programmstart DLLs zu registrieren. Die Registrierung erfolgt in einer virtuellen Registry, in der keine Administrator Rechte benötigt werden. Nach dem Programmende sind die Registrierungseinträge wieder entfernt.
Diese Funktion geht nicht mit allen DLLs und sollte nur dann angehakt werden, wenn DLLS geschützt werden und diese registriert werden müssen.
Funktioniert die Registrierung nicht, sind die DLLs aus dem Projekt zu entfernen und ungeschützt mit einem Installationsprogramm zu installieren und registrieren.
Startet die geschützte EXE Datei nicht, dann entfernen Sie diese Option. Sofern die EXE Datei eine .config Datei zusätzlich hat, muss diese Option immer angehakt werden.
Bsp: Myapp.exe und Myapp.exe.config
Sofern nur eine EXE Datei gegen Dekompilierung geschützt und keine Lizenzierung verwendet wird oder die Lizenzierung über Licence Protector (www.Licence-Protector.com) erfolgt, dann ist diese Option zu verwenden. Alle Lizenzierungseinstellungen werden ignoriert und es wird keine Lizenzdatei (.lic) erstellt.
Da das Laden eines großen Projektes etwas länger dauern kann, kann die Anzeige einer Animation mit Text dem Benutzer darauf hinweisen, dass das Programm in Kürze startet.
Diese Option prüft, ob die All-In-One Player Datei verändert wurde (z.B. durch einen Hacker). In diesem Fall wird die geschützte Anwendung nicht gestartet.
Jede EXE-Datei als eigenständige, verschlüsselte Datei speichern
Benutzen Sie diese Option nur wenn Sie mehrere EXE Dateien im Projekt haben aber keine zusätzlichen Dateien wie DLL, Bilder etc. Jede EXE Datei wird dann die selbe Lizenzdatei benutzen.