![]() |
Programm durch Lizenznummer freischalten/erweitern
Hai ihr lieben,
ich arbeite zur Zeit an einem Programm für eine Hausverwaltungsfirma mit dem sie die möglichen Mieterhöhungen der Wohnungen/Mieter verwalten können. Jetzt stellt sich mir die Frage nach dem "Verkaufsprinzip". Ich kann entweder sagen:
Den zweiten Punkt möchte ich fast ausschliessen da die Firma dann sicher eine ein oder zwei Userlizenz kauft da nicht alle Mitarbeiter das Programm gleichzeitig nutzen werden. Punkt 1 hat den Vorteil das ich mich um Freischaltung usw. nicht kümmern muss. Nachteil ist aber das es einen relativ hohen Preis haben wird was denn Kunden dann abschreckt. Bei Punkt drei sehe ich den Vorteil das die Kosten dür das Programm sich an die Gegebenheiten anpassen. Aber die große Frage: Wie löse ich das vernünftig mit Lizenzschlüsseln? Der Kunde muss also jederzeit die Möglichkeit haben zusätzliche Lizenzen zu erwerben. Am schönsten wäre es wenn ich in solch einem Lizenzschlüssel auch eine zeitliche Begrennzung einbauen könnte. Dadurch könnte der Kunde ersteinmal einen Demo-Key für eine bestimmte Anzahl von Wohnungen bekommen um das Programm zu testen. Hat einer von euch einige Denkanstösse für mich? |
Re: Programm durch Lizenznummer freischalten/erweitern
Mit Shareit läßt sich das Regeln. Aber da hat hansa glaube ich mehr Ahnung. Ansonsten würde ich noch mal bei
![]() |
Re: Programm durch Lizenznummer freischalten/erweitern
Hai Luckie,
das Programm wird ja nicht über das Internet vertrieben da ich mit dem Kunden direkt in Verbindung stehe. |
Re: Programm durch Lizenznummer freischalten/erweitern
Zitat:
Ich denke da z.B. an ein Auto. Ich würde es nicht einsehen, wenn ich einen höheren Preis bezahle, weil ich mehr damit fahre. Wenn ich aber immer 6 Personen mitnehmen möchte, muss ich ein grösseres Auto kaufen. Ich benutze eine Lizenzdatei, in welcher die Anzahl der freigeschalteten User, Mandanten und Funktionen verschlüsselt ist. Die Anzahl der gleichzeitig arbeitenden User lässt sich in der Regel ermitteln. Kauft der Kunde eine Erweiterung um 5 User, erhält er eine neue Lizenzdatei. Hier mal mein Aufbau:
Delphi-Quellcode:
Ich sehe gerade, mein Kommentar ist lückenhaft. Es gibt noch Anzahl Mandanten und Anzahl User.
unit RW_BaseLiz;
{ Aufbau Lizenzdatei: Stelle 1 - 20 / 20 - Random Zeichenkette zum Vercrypten 21 - 35 / 15 - (5/2/8 - Produkt/Version/Nummer) 36 - 40 05 - Lizenzschalter 1. Stelle Entwicklerversion 2. Zeitbegrenzung 3. Stelle Updateberechtigt M = Minorversion 41 - 50 / 10 - Beginn Lizenz 51 - 60 / 10 - Ablauf Lizenz 61 - 70 / 10 - Updates bis Datum 71 - 110 / 40 - Lizenznehmer Name 111 - 150 / 40 - Name1 151 - 190 / 40 - Name2 191 - 230 / 40 - Name3 231 - 270 / 40 - Strasse 271 - 280 / 10 - Hausnummer 281 - 285 / 5 - Land 286 - 290 / 5 - Plz 291 - 330 / 40 - Ort 331 - 430 / 100 - Module (Schalter) 431 - 510 / 80 - Reserve 511 - 520 / 10 - HashCodeA CryptString als Integer Hash11 521 - 530 / 10 - HashCodeB Lizenz als Integer Hash11 } Cu, Frank |
Re: Programm durch Lizenznummer freischalten/erweitern
@dataspider
man kann das mit dem Auto aber auch anders sehen. Je mehr Personen du als Fahrer befördern willst, desto grösser muss dein Auto sein. Auf die Software angewandt: je mehr Kunden du als Benutzer mit deiner Software verwalten willst, desto grösser und teurer ist die Software... oder so Jedenfalls sind wir gerade dabei, eine Lohn-Software zu erstellen und werden diese auch nach diesem Prinzip vertreiben. Die Grundlizenz wird für 15 Lohnempfänger ausgelegt sein und mit einer erweiterten Lizenz können dann lohnempfänger hinzugekauft werden (erweiterung jeweils um 5 Lohnempfänger). Allerdings haben wir uns noch nicht auf ein System geeinigt, wie wir das realisieren werden. Vermutlich wird irgendwo eine Lizenzdatei verschlüsselt rumliegen, und diese wird die Datenbank beschränken (bei jedem Anlegen eines neuen Empfängers wird geprüft ob das die Lizenz überhaupt zulässt) |
Re: Programm durch Lizenznummer freischalten/erweitern
Sehe ich das richtig, das dann der Datenbankserver die Lizensdatei verarbeiten müßte. Nur der kann ja entscheiden, ob noch ein User angemeldet werden darf ?!?
Grüße // Martin |
Re: Programm durch Lizenznummer freischalten/erweitern
Bei unserer Software ist die Datenbank auf dem gleichen Rechner wie die Applikation (Interbase...).
Aber auch sonst kannst du doch auch über die Appliaktion z.B. ein RecordCount machen und mit der Lizenzdatei abgleichen? Die Applikation "weiss" so auch wieviele Datensätze erfasst wurden und kann so mithilfe der Lizenzdatei entscheiden. |
Re: Programm durch Lizenznummer freischalten/erweitern
Sharky, schau mal bei
![]() Und vor allem... Das Tool arbeitet mit relativ starken Verschlüsselungsverfahren, so dass es auch nicht so ohne Weiteres möglich sein sollte, die Limitierung durch ein Patch zu limitieren... Du hast doch auch mein Programm Rema mal zu Weihnachten geschenkt gekriegt, das verwendet selbst auch die besagte Komponente. |
Re: Programm durch Lizenznummer freischalten/erweitern
Zitat:
Zum Programmstart lese ich die Lizenzdatei ein und prüfe die Anzahl der mit der DB verbundenen User mit der Zahl in der Lizenzdatei. Dabei nutze ich die Möglichkeiten von IBO (Firebird DB). Die Connection liefert über Users (TStrings) alle Informationen. Also:
Delphi-Quellcode:
Cu, Frank
if Connection.Users.Count > Lic.MaxUser then
begin // nur als Beispiel ShowMessage('Maximale Anzahl Benutzer erreicht...'); Connection.DisConnect; Application.Terminate; end; |
Re: Programm durch Lizenznummer freischalten/erweitern
Zitat:
leider kostet das Produkt ja einige Euros (300 mit Souce). Aber das "Hauptproblem" ist das es wohl keine D2006 Version in der Trial gibt und ich es darum nicht testen kann. Ich werde mir morgen mal überlegen ob ich da nicht selber etwas machen kann. Die Idee von dataspider mit der Lizenzdatei ist ja nicht schlecht. Das in Verbindung mit einem Schlüssel zum entschlüsseln der Datei und dann das ganze im Datenbankserver zu hinterlegen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz