Frage

Ich entwickle eine Shareware-Desktop-Anwendung. Ich bin zu dem Punkt, wo ich brauche den Trial-use / Aktivierungs-Code zu implementieren. Wie Sie so etwas wie dieser Ansatz? Ich habe meine eigenen Ideen, aber ich will sehen, was die Gemeinschaft denkt Stackoverflow.

Ich entwickle mit C ++ / Qt. Die vorgesehene Plattform ist Windows- / Mac / Linux.

Vielen Dank für Ihre Beratung!

War es hilfreich?

Lösung

Was gegen schützen und was nicht zum Schutz vor:

Beachten Sie, dass die Menschen immer einen Weg finden, Ihre Probezeit zu umgehen. Sie wollen also es ärgerlich zu machen für die Person, um Ihre Probezeit erhalten zu haben, aber es spielt keine Rolle, wenn es unmöglich ist, um Sie Probezeit zu erhalten.

Die meisten Leute werden denken, es ist zu viel Arbeit, um zu versuchen und Ihre Probezeit zu umgehen, wenn es auch ein einfacher Mechanismus ist. Zum Beispiel Menschen können immer filemon / regmon verwenden, um welche Dateien und Registry-Einträge zu sehen ändern Sie Ihre Software bei der Installation.

aber sagen, dass ein einfacher Mechanismus ist am besten, weil es weniger Zeit vergeudet.

Hier sind einige Ideen:

  • Sie können für jeden einzelnen Tag in der Registry eine Taktzählung irgendwo tun, die ausgeführt wird. Wenn tick count> 30 dann sie eine abgelaufene Meldung.
  • Sie können speichern Sie die Installationsdatum, aber Kopf nehmen zu überprüfen, ob sie als Ihre Testversion mehr Tage zur Verfügung haben soll sein, so dass sie dann erzählen sie abgelaufen sind. Dies schützt gegen Menschen ihr Datum zu ändern, bevor zu einem zukünftigen Tag installieren.
  • Ich würde empfehlen, Ihre Deinstallation zu machen, entfernen Sie Ihre „Tage läuft“ zählen. Dies ist, weil die Menschen können Ihr Produkt Monate später neu bewerten und schließlich kaufen. Aber wenn sie es nicht beurteilen können, werden sie nicht kaufen. Kein seriöser Benutzer würde Zeit haben, zu deinstallieren / neu installieren nur zusätzliche Verwendung des Produkts zu erhalten.

Die Ausweitung Studien:

Für uns, wenn ein Kunde eine Test Verlängerung beantragt hat, können wir sie eine automatisierte E-Mail senden, die ein Programm „TrialExtend.exe“ enthält und einen Testcode erweitern. Dieses Programm Kontakte unser Server mit dem Testcode erweitert sie zu validieren. Wenn der Code bestätigt ist, wird die Probezeit zurückgesetzt.

Andere Tipps

Was immer Sie tun, halten ein wachsames Auge auf das Systemdatum. Der älteste Trick im Buch ist eine Anwendung zu einem bestimmten Zeitpunkt in der Zukunft zu installieren und dann auf die Real Datum zurückkehren, sobald die Anwendung das dumme Datum bei dem ersten Ausführung gespeichert. Vielleicht mit einem Online-Repository den Schlüssel synchronisieren?

Brians Antwort ist toll, aber ich möchte noch etwas hinzufügen.

Linux-Anwender ist in der Regel zu zahlen für Software nicht verwendet werden, und sie neigen dazu, mehr technisch versierte und möglicherweise sogar „religiöse“ auf Open-Source-Themen.

Aus diesem Grunde würde ich wirklich empfehlen, es einfach zu halten -. Es ist wirklich nur ein kleines Hindernis, die Software zu machen Kauf es zumindest so einfach wie zu stehlen

Ich würde vorschlagen, dass sie nörgelt oder deaktiviert bestimmte Funktionen (zB Speicher) nach der Probezeit nicht vollständig zu sterben. Nur eine Beobachtung, aber merkmalsbasierte Einschränkungen scheinen häufiger in der Linux-Welt.

Als Nebenwirkung, so dass die Linux-Version eines "first class" -Version -. Anständiges Installer etc helfen

Wenn Sie relativ klein sind, oder Ihr Programm relativ Nische, gibt es eine ziemlich kleine Chance, irgendjemand die Mühe, es zu knacken -. So konzentriere nur ein gutes Produkt mit einer geradeaus niggle einmal der Zeit abgelaufen zu machen

Wenn Sie [ziemlich] wahrscheinlich eine Netzwerkverbindung haben, können Sie das Installationsregister mit Ihrer Website haben, dann überprüfen Sie dagegen jedes Mal, es beginnt.

Wenn das nicht möglich ist, auf dem Dateisystem einen Wertes in eine Welt modifizierbare Punkt Schreiben (ein Registrierungseintrag, Eintrag in und / etc conf-Datei, usw.) kann praktikabel sein.

Vielleicht ist das eigentliche Problem ist der zeitlich begrenzte Test. Die Firma für die ich arbeite hat eine Menge von Active Directory arbeiten und wir in der Regel unsere Software auf eine kleine Anzahl an Benutzern für Testversionen begrenzen. Ich glaube, dass in irgendeiner Weise zu beschränken Funktionalität ist manchmal besser, einfacher zu implementieren und nicht ausfällt, wenn der Benutzer einfach das Datum auf dem Computer ändert.
Es ist Balanceakt, dass Sie nicht Funktionalität zu streng begrenzen, sonst Benutzer nichts aus dem Prozess bekommen. Zur gleichen Zeit, eine Grenze, die zu locker gibt keinen Anreiz zum Kauf.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top