Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi 14 Tage Testversion ... wie geht das? (https://www.delphipraxis.net/105373-14-tage-testversion-wie-geht-das.html)

xtrnrfe 20. Dez 2007 17:24


14 Tage Testversion ... wie geht das?
 
Hallo!

Wie kann man eine Testversion eines Delphi-Programms erstellen, das nach 14 Tagen nicht mehr läuft?
Was ich genau wissen möchte ist: WO legt man eine Information ab, dass auch wenn das Programm deinstalliert wurde und wieder neu installiert man sieht, das der Testzeitraum zu Ende ist?

An einem versteckten Ort in der Registry? Da gibt es doch Rechte-Probleme vor allem mit Vista?!
Ein File das irgendwo abgelegt wird? Das ist doch unschön.

Ich habe schon versucht eine Antwort auf meine Frage zu finden, aber stelle mich irgendwie zu doof an.
Auch möchte ich keine externe Komponente verwenden ... das Ganze muss nicht tot-sicher sein ... sollte aber einen Normal-User zum Kauf der Software veranlassen.

Könnt Ihr mir bitte sagen wie alle anderen Shareware-Programmierer das machen ... es muss auch mit Vista funktionieren ... ohne UAC abzuschalten.

Vielen Dank im Vorraus!

:coder:

Grüsse xtrnrfe

jakobwenzel 20. Dez 2007 17:25

Re: 14 Tage Testversion ... wie geht das?
 
Die meisten legen einfach nen Registry-Key an.

Rakshasa 20. Dez 2007 17:30

Re: 14 Tage Testversion ... wie geht das?
 
Mich persönlich stört es unheimlich, dass alle möglichen Programme auf meinem Rechner Daten hinterlassen, die ich weder einsehen noch problemlos löschen kann (da ich den Speicherort ja nicht kenne). Wenn das ein (Shareware-)Programm mach, ok...aber sobald es jeder Autor für sein Programm als problemlos erachtet...

Naja - was ich damit sagen will: Schränke doch Dein Programm anders ein, ein Timeout ist auch immer leichter zu Cracken als bspw. deaktiverte Funktionen. Eine Möglichkeit wäre es z.B., dass die Shareware-Version keine Änderungen speichern kann o.Ä.

angos 20. Dez 2007 17:31

Re: 14 Tage Testversion ... wie geht das?
 
Hi,


Zitat:

Zitat von xtrnrfe
[...] das Ganze muss nicht tot-sicher sein ... sollte aber einen Normal-User zum Kauf der Software veranlassen.
[...]

hier bietet sich an: eine verschlüsselte Lizenzdatei in welcher die maximale Laufzeit eingetragen ist. Beachten sollte man da zusätzlich, dass "nur ein Ablaufdatum setzen" umgangen werden kann, da der User nur die Systemzeit umstellen muss.

[edit]
Die Datei legst du im Programmordner oder dem passenden Userordner ab, damit diese auch gefunden werden kann. Wie schon mein Vorposter schreibt ist es unschön Leichen auf dem Rechner zu haben

Gruß
Ansgar

PS: kein roter kasten

xtrnrfe 20. Dez 2007 17:37

Re: 14 Tage Testversion ... wie geht das?
 
Danke für die schnellen Antworten!

Wo könnte man diesen versteckten Eintrag in der Registry ablegen?
Wo hat man keine Probleme mit den Rechten ... HKLM braucht man ja Admin-Rechte. Vista schränkt hier (glaub ich) noch weiter ein!
Wo wäre den ein "geeigneter Ort" in der Registry dafür?

Ghostwalker 20. Dez 2007 17:39

Re: 14 Tage Testversion ... wie geht das?
 
Alternative zu Zeitablauf, wäre auch noch ein sog. Nagscreen. Also ein Dialog, der hin und wieder auftaucht und den Benutzer darauf hinweißt, das er eine Testversion nutzt.

xtrnrfe 20. Dez 2007 17:49

Re: 14 Tage Testversion ... wie geht das?
 
Ja das haben wir uns auch schon überlegt ... wie 1 2 3 beim Total Commander.
Wir haben uns aber entschieden einen Nagscreen zu zeigen bis das Programm registriert wurde und oder nach 14 Tagen die Funktionalität einzuschränken.
Das Problem das es zu lösen gilt ist das Deinstallieren/Neuinstallieren durch eine abgelegte Info zu verhindern. Das mit dem Uhrzeit zurückstellen kann ich dann auch abfangen.
Der Ablageort wäre mir wichtig. Die Alternativen sehe ich schon ganz klar.

Nuclear-Ping 20. Dez 2007 17:56

Re: 14 Tage Testversion ... wie geht das?
 
Erstelle lieber eine Demo-Version deiner Anwendung - falls Möglich, statt die Möglichkeit anzubieten, die Software zur Vollversion freizuschalten. Ist zwar bequemer, aber nicht sicherer. Wohingegen eine Demo-Version halt sicherer, aber etwas unbequemer ist.

Die Demo kannst du zB aus deinem jetzigen Code erstellen, indem du Compiler-Schalter benutzt. Zum Beispiel ...
Delphi-Quellcode:
{$IF Defined(COMPILE_DEMO)}
  Dateispeichern1.Enabled := FALSE; // TMenuItem "Datei speichern"
{$IFEND}

// ...

// Bedingte Compilierung, Code zum speichern wird in Demo nicht mitcompiled.
procedure TForm1.DateiSpeichern(...);
begin
{$IF Defined (COMPILE_DEMO)}
  Exit;
{$ELSE}
  // Code zum speichern
{$IFEND}
end;
Die Compiler-Schalter kannst du unter den Projektoptionen einstellen.

xtrnrfe 20. Dez 2007 18:02

Re: 14 Tage Testversion ... wie geht das?
 
Das mit dem Kompilieren von verschiedenen Versionen ist auf jeden Fall cool ... hab ich noch nicht gewusst!
Wir wollen unbedingt die Freischalt-Version machen! Wenns einen crackt dann auch gut. Einer der nicht kaufen will soll trotzdem die Software verwenden ... das steigert die Verbreitung ;-) Ich sehe das total entspannt. Crack wirds eh gleich einen dafür geben. Es gibt 2 Arten von Usern ... der eine gibt Geld aus ... der Andere nie.

Bitte helft mir noch mit dem Registry-Ort ... da kenne ich mich nicht so gut aus.

Pfoto 20. Dez 2007 18:16

Re: 14 Tage Testversion ... wie geht das?
 
Hallo!

auch wenn du keine fremde Komponente einsetzen willst
könntest du dir doch dort Infos holen

Ich habe das hier gefunden in TRegWare (wakproductions.com):

Delphi-Quellcode:
 
if CheckForWinNT = true then
    begin
      Registry.RootKey := HKEY_CLASSES_ROOT;
      Registry.OpenKey('\CLSID\' + FProgGUID + '\Info', true);
    end else
    begin
      Registry.RootKey := HKEY_LOCAL_MACHINE;
      Registry.OpenKey('\Software\CLASSES\CLSID\' + FProgGUID + '\Info', true);
    end;
Sieht so aus, als würde er zwar den herkömmlichen Ort
für Programme nehmen, jedoch einfach den Ordner durch
eine GUID vorm User verstecken.


Gruß
Pfoto


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:20 Uhr.
Seite 1 von 2  1 2      

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