Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Wie erstellt man eine DEMO-Version (https://www.delphipraxis.net/146090-wie-erstellt-man-eine-demo-version.html)

Jens Hartmann 13. Jan 2010 08:58


Wie erstellt man eine DEMO-Version
 
Hallo zusammen,
habe mal eine Frage zum Thema DEMO-Versionen. Wie würde Ihr eine DEMO-Version erstellen. Mein Gedanke war folgender. Ich implementiere einen Timer, welchen ich im Form.Create starte.
Diese Zeile würde ich in der Standardversion auskommentieren.
Im Ereignis des Timer würde ich eine ShowMessage hinterlegen mit DEMO-Version, und anschließend einen weiteren Timer starten, welcher das Programm nach X Stunden beenden würde.

Delphi-Quellcode:
Form.Create;
begin
TimerDemo.Enabled := true;
End;

TimerDemo…
Begin
ShowMessage(‘Dies ist eine DEMO-Version, das Programm wird in 10 Stunden automatisch beendet‘);
TimerDemo.Enabled := false;
TimerDemoStop.Enabled := true;
End;

TimerDemoStop…
Begin
Close;
End;
Was würdet Ihr dazu sagen. Oder wie würdet Ihr sowas lösen.

Gruß Jens

Bernhard Geyer 13. Jan 2010 09:02

Re: Wie erstellt man eine DEMO-Version
 
Die Frage ist immer wie sicher sowas sein muss.

Bei einer Messagebox dürfte ein Hacker den entsprechenden Aufruf mit Timerstart in 5 Minuten mit NOPs auskommentiert haben.

Jens Hartmann 13. Jan 2010 09:15

Re: Wie erstellt man eine DEMO-Version
 
Hallo Bernhard,

Sicherheit benötige ich eigentlich nicht. Die DEMO werden eigentlich nur Vertriebsleute in der Hand haben, um sich diese Sache anzusehen.
Ich habe halt nur das bedenken, wenn ich die DEMO ganz ohne Einschränkungen ausgebe, das es ja dann förmlich dazu verleitet die Software zu nutzen.
Ich möchte somit eigentlich nur eine gewisse Einschränkung erreichen.

Gruß Jens

dataspider 13. Jan 2010 09:27

Re: Wie erstellt man eine DEMO-Version
 
Hi,

es kommt natürlich darauf an, was das Programm macht.
Ich habe es z.B. so gelöst, dass in der Demo auf jedem Ausdruck 'DEMO' steht.

Allerdings wäre mein Programm ohne vernünftige Ausdrucke halt nutzlos.

Grund ist, dass die Gängelei mit Meldungen und zusätzlichen Bestätigungen ja auch mich selbst nervt.
Und wenn man das nicht sehr bedacht angeht, hat man schon potentielle Kunden verloren.

Frank

himitsu 13. Jan 2010 09:35

Re: Wie erstellt man eine DEMO-Version
 
Jupp, zeitliche Einschränkungen lassen sich mitunder noch am Leichtesten umgehn.
Besser ist da immernoch die Funktionalität etwas einzuschränken.
- Funktionen weglassen (nicht nur deaktiveren, sondern garnicht erst einkompiliert)
- Zusätzliches reinzumachen läßt sich zwar auch zumgehn, aber nerft nicht so, wie z.B. irgendwenwelche ständigen Messageboxen
- die Menge von irgendwas beschränken
- ...

Delphi-Laie 13. Jan 2010 09:57

Re: Wie erstellt man eine DEMO-Version
 
Vor kurzem gab es, soweit ich mich entsinne, in diesem Forum eine gute Diskussion dazu.

Tenor:

- der Aufwand, den man in einen mehr oder weniger vermeintlichen Schutz seines Programmes investiert, geht letztlich für die Pflege und Weiterentwicklung des eigentlichen Programmes (also im Hinblick auf die nützlichen Funktionen) verloren.
- Ist ein Programm gut genug, daß es einen Hack/Crack rechtfertigt, dann wird es auch entsprechend „behandelt“ bzw. „bearbeitet“.
- Kein Schutz ist vollkommen. Sogar die weltweit führenden Softwarehäuser haben einen solchen bis heute für ihre Produkte nicht geschafft, obwohl die Heerscharen dafür angestellt haben dürfte und gut bezahlen.
- Ein Programm, das geschützt wird, erweckt zusätzliche Neugier, Aufmerksamkeit (suggeriert besondere Wertfülle) und weckt deshalb und aus dem Grunde des Sportgeistes den Jagd- und Erfolgsinstinkt umso mehr. Und gerade bei Mikroweich dürfte noch ein erheblicher weltweiter Rochus hinzukommen: Mit rechtlich fragwürdigen Methoden, gepaart mit aggressiver Vermarktung und nicht enden wollenden Werbelügen und ewigen, nur teilweise gehaltenen Versprechen hat man sich zum faktischen Monopolisten hochgegaunert und der Welt letztlich eine aberwitzigen monetären Betrag für qualitativ lausige bis fragwürdige Produkte abgeluchst.

himitsu 13. Jan 2010 10:02

Re: Wie erstellt man eine DEMO-Version
 
Hier geht es ja nicht um einen Kopierschutz (welches noch aufwändiger wird).
Wenn man eine Demo z.B. im Funktionsumfang so einschränkt, daß einige Funktionen garnicht oder nur teilweise vorhanden sind, dann kann da ein "Hacker" auch nichts dran ändern, egal wie sehr er sich bemüht ... was nicht vorhanden ist, kann auch nicht freigeschaltet werden.

Jens Hartmann 13. Jan 2010 10:05

Re: Wie erstellt man eine DEMO-Version
 
Zitat:

Zitat von himitsu
Besser ist da immer noch die Funktionalität etwas einzuschränken.

Habe ich auch schon überlegt, allerdings möchte ich dem potenziellen User eigentlich auch alle Funktionen Präsentieren. Und wenn ich beim Normalen kompilieren einfach die Zeile
Delphi-Quellcode:
{TimerDemo.Enabled := true;}
Auskommentieren würde, kann ich mein Programm ja eigentlich immer normal starten. Wenn ich jetzt eine DEMO erstellen will, kommentiere ich die Zeile ein und fertig.
Wie meint Ihr das den sonst mit der Einschränkung. Das heißt z.B. das Ihr gewisse Unit´s einfach aus dem Projekt entfernt. Aber das ist doch dann immer mit einem größeren Aufwand verbunden.
Der Vorgang wäre sonst nämlich auch OK für mich, da ich auch gewisse Funktionen in meinem Programm habe, die ich als Option einbinden will.
Z.B. das versenden von E-Mails soll eine Option werden. Da weiß ich auch noch nicht wie ich das später mal genau einbinden werde.

Luckie 13. Jan 2010 10:14

Re: Wie erstellt man eine DEMO-Version
 
Du kannst mit Hilfe von Compilerschaltern eine bedingte Compilierung erreichen. Das ist in der Regel einfachher als Ein- und Auskommentieren:
Delphi-Quellcode:
{.$DEFINE DEMO}

...

{$IFDEF DEMO}
        SetTextColor(dc, RGB(255, 0, 0));
        rect.Top := rect.Top + 3;
        rect.Right := rect.Right - 10;
        DrawText(dc, PChar(rsDemo), length(rsDemo), rect, DT_CENTER);
{$ENDIF}
In diesem Fall ist der Compilerschalter deaktiviert und es wird eine Vollversion erstellt. Nimmst du den Punkt bei DEFINE weg, ist der Compilerschalter aktiviert und der Code zwischen IFDEF und ENDIF wird mitkompiliert.

RWarnecke 13. Jan 2010 10:15

Re: Wie erstellt man eine DEMO-Version
 
Ich würde die Funktionen mit Compiler-Schaltern herausnehmen, die nicht in der Demo-version vorhanden sein sollen und keinerlei zeitliche Beschränkungen reinpacken. Wenn dann ein Anwender das komplette Programm haben möchte, würde ich Ihm eine neue EXE-Datei zuschicken, wo dann die Funktionen wieder über die Compiler-Schalter freigeschaltet sind.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:56 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz