IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Delphi Discussion :

Développer un logiciel d'essai


Sujet :

Langage Delphi

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    803
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 803
    Points : 182
    Points
    182
    Par défaut Développer un logiciel d'essai
    Bonjour,

    Quelqu'un sait-il comment développer un logiciel d'essai ne fonctionnant que pendant trente jours par exemple...

    Merci à tous

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 45
    Points : 49
    Points
    49
    Par défaut
    personne ne le sais ;-) La date de l'ordinateur peut etre modifier et à moins d'exiger une conection sur ton serveur internet, toute tes protection de ce type peuvent etre détournée.

    Sinon, la solution simple, c'est:
    - Inclure un fichier de parametre (par exemple XML) avec le parametre "date instalation" et l'initialiser à "vide"
    - au lancement, si la date est "vide", la remplacer par la date courante (fonction "now" de delphi)
    -si elle n'est pas vide est que (date installation +30 > now ), tu met un message d'erreur


    Pour eviter de réinventer la roue :
    Perso, j'utilise Install Creator Pro de l'éditeur Clickteam. Il ne permet pas ça, mais il inclu un systeme de clé pour installer sois la version d'eval soit la version complete. Je n'ai pas testé cette fonction, mais le programme est globalement très bon et simple (et les devs sont francais et répondent sur le forum)
    Il est payant(logique faut tester cette fonctionnalité en vrai) , mais la version d'eval est tres permissive.

  3. #3
    Membre chevronné
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 262
    Points : 1 928
    Points
    1 928
    Par défaut


    ben, chacun a ses propres méthodes et algos... dans la BdR, dans un fichier texte ou image, dans plusieurs en même temps pour comparaison...

    Ensuite comparaison entre le premier lancement de ton programme et le jour courant.

    Si date passée ; alors tu bloques le lancement selon tes souhaits, ou bien lance une boite disant que la fin d'essai est arrivé à échéance.

    Faut jouer de ruse pour cacher intelligemment les paramètres en question.

    @+

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    45
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 45
    Points : 49
    Points
    49
    Par défaut
    Citation Envoyé par Droïde Système7 Voir le message
    Faut jouer de ruse pour cacher intelligemment les paramètres en question.
    Ouaip!
    Le corolaire étant que plus tu la joue subtil, plus tu risque pourrir la vie des utilisateur honetes (genre que tu a oublier de tester le cas d'un utilisateur avec les droits minimums ou que tu tente de planquer les info dans un endroit n'existant pas sous Windows 98).

    Perso, pour mon programme à moi, j'ai préféré retirer des fonctions. C'est moins dépendant du système et donc moins à même d'être bloquer/débloqué. Reste à voir si c'est pertinent dans ton cas.

  5. #5
    Modérateur

    Homme Profil pro
    Ingénieur retraité
    Inscrit en
    Octobre 2005
    Messages
    2 396
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur retraité

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 396
    Points : 3 266
    Points
    3 266
    Par défaut
    Bonjour,

    Quelqu'un sait-il comment développer un logiciel d'essai ne fonctionnant que pendant trente jours par exemple...
    Ben comme il est rare qu'un utilisateur dérègle la pendule de Windows le moins compliqué est de faire un DeleteFile(const FileName: string) du fichier *.exe situé dans le répertoire RepAppli:=ExtractFilePath(Application.ExeName); au bout des 30 jours. La date de la première utilisation pouvant être cachée par exemple dans un mini-fichier auto-généré lors de cette première et dont l'extension n'incite pas de curiosité à l'utilisateur lambda comme par exemple .dll

    Mais il peut également être intéressant au bout des 30 jours, au lieu de déclencher cette auto-destruction, de faire apparaître toutes les minutes ou toutes les 30 secondes une fenêtre de harcèlement rappelant que la période d'essai et de gratuité est dépassée : et de deux choses l'une ou-bien l'utilisateur agacé met le logiciel à la poubelle, ou-bien il achète le logiciel s'il lui rend un réel service.

    A+
    N'oubliez pas de consulter les FAQ Delphi et les cours et tutoriels Delphi

  6. #6
    Membre éclairé Avatar de Kaféine
    Homme Profil pro
    Inscrit en
    Avril 2007
    Messages
    569
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 569
    Points : 736
    Points
    736
    Par défaut
    Salut,

    OnGuard de Turbopower permet de faire des versions d'évaluations (limite n jours, réseaux...). C'est facile à prendre en main et la doc est plutôt bien faite.

    http://sourceforge.net/projects/tponguard/
    Akim Merabet

  7. #7
    Membre expérimenté
    Avatar de sat83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2004
    Messages
    1 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 040
    Points : 1 307
    Points
    1 307
    Par défaut
    Hello!

    Comme expliqué dans les réponses précédentes, aucune solutions n'est efficace à 100%...

    Voici une solution que j'avais mis en place il y a quelques année :

    - Je sauvegarde 3 dates : première utilisation, date de fin et dernière utilisation
    - J'enregistre ces informations à la fois dans le registre, et à la fois dans un fichier crypté
    - Donc à chaque lancement de l'application je met a jour les infos.

    => Si une infos du registre est différentes des infos dans le fichier l'utilisateur a modifier le registre => LA LICENCE EXPIRE
    => Si la date du système est supérieur à la date de fin => LA LICENCE EXPIRE
    => Si la date du système est inférieur à la date de début ou à la date de dernière utilisation (l'utilisateur a modifier la date du système) => LA LICENCE EXPIRE

    Bien sûr il y a des parades contre ce système (comme contre tout système de protection), mais dans mon cas c'était tout à fais satisfaisant.
    Ce que l'on apprend par l'effort reste toujours ancré plus longtemps...

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    803
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 803
    Points : 182
    Points
    182
    Par défaut
    L'incription des dates dans le registre avec un double dans un fichier caché (une image par exemple) me parait intéressante.

    Quelqu'un peut m'expliquer comment inscrire trois dates dans le registre et comment les lire ?

    Un code source serait le bienvenu...

  9. #9
    Membre émérite
    Homme Profil pro
    Directeur technique
    Inscrit en
    Mai 2008
    Messages
    2 401
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 401
    Points : 2 310
    Points
    2 310
    Par défaut
    Citation Envoyé par colorid Voir le message
    L'incription des dates dans le registre avec un double dans un fichier caché (une image par exemple) me parait intéressante.

    Quelqu'un peut m'expliquer comment inscrire trois dates dans le registre et comment les lire ?

    Un code source serait le bienvenu...
    tout y est là : http://delphi.developpez.com/faq/?page=basederegistre

    Bonne chance.
    Bon courage ou Bonne Chance (selon le contexte)
    Mon blog sur WordPress

  10. #10
    Expert confirmé

    Profil pro
    Leader Technique
    Inscrit en
    Juin 2005
    Messages
    1 756
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Leader Technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 1 756
    Points : 4 173
    Points
    4 173
    Par défaut
    Citation Envoyé par madlozoz Voir le message
    Ouaip!
    Le corolaire étant que plus tu la joue subtil, plus tu risque pourrir la vie des utilisateur honetes
    Oui, ou encore, plus tu la joue subtil, et plus tu vas attirer l'attention d'un pirate :
    Le pirate va lancer un processmon (ou filemon et regmon), lancer ton appli et regarder tous les fichiers et clés de la base de registre auxquels elle accède.

    Si tu vois qu'elle va chercher des trucs dans des endroits où elle n'a rien à faire (encore plus si elle y écrit) -> C'est probablement qu'elle essaie de planquer des trucs...
    Et comme ça tu repères en 30s les fichiers de paramètres (ou clé de registre) qui mémorisent la date d'installation de l'appli !

    Il est très difficile de se protéger efficacement contre ça.

    On peut cependant envisager différentes solutions :
    - La clé d'évaluation : Lorsque l'appli est installée, elle réclame une clé d'évaluation pour fonctionner. Tu mets en place une procédure d'enregistrement quelque part et l'utilisateur doit s'enregistrer pour démarrer son évaluation. Dans la clé d'éval que tu lui envoie, tu cryptes la date de fin de validité de l'appli ! Ca oblige en plus l'utilisateur à s'inscrire, et ça te permet de suivre les évaluations.
    L'inconvénient, c'est que pour une appli grand publique, beaucoup refuse de s'enregistrer.
    - Autre possibilité, si c'est possible : Ne pas utiliser de fichier de paramètres pour mémoriser la date d'installation, mais se baser directement sur les données de l'appli. Par exemple, si tu fais un logiciel de facturation, tu peux tester les dates des factures ! Le client est forcé de garder ses factures avec les bonnes dates de facturation. Donc il te suffit de tester la date de la facture la plus ancienne...

    Une autre variante à peine différente, au lieu de tester une durée d'utilisation, tu limites la volumétrie des données gérées (pas plus de n clients, pas plus de n factures...). Bon le problème dans ce cas, c'est que le prospect ne pourra pas vérifier les perfs de ton appli sur sa volumétrie...

  11. #11
    Membre chevronné
    Avatar de Droïde Système7
    Homme Profil pro
    Inscrit en
    Septembre 2003
    Messages
    2 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 2 262
    Points : 1 928
    Points
    1 928
    Par défaut
    Ou encore une idée : pourquoi ne pas distribuer (librement) une appli absolument identique à la version commerciale.

    Sauf que... la version librement distribuable sera codée pour se détruire ou s'auto-limiter en fonctions, avec message de rappel à l'ordre = période d'essai dépassée ?

    Hé oui un peu plus lourd puisque deux versions pour une seule appli, mais au final, pas le plus simple et léger ?

    Car ne pas oublier que sur 100 logiciels téléchargés = pour x raisons ; seulement UN sera acheté.

    Cette dernière analyse, n'est pas de moi, mais d'un développeur qui distribue un freeware, justement à ces fins de gestions. L'autre fois j'avais vu et lu avec ça avec intérêt, sur l'un des forums DVP d'ici.

    A méditer...

Discussions similaires

  1. Comment développer un logiciel open source
    Par ouadie99 dans le forum Linux
    Réponses: 6
    Dernier message: 15/03/2007, 17h57
  2. Développement de logiciel combien cela coute .
    Par QAYS dans le forum Structure
    Réponses: 21
    Dernier message: 20/02/2007, 14h18
  3. Choix d'un langage pour développer un logiciel de calcul
    Par Maverick27 dans le forum Langages de programmation
    Réponses: 11
    Dernier message: 30/01/2007, 23h23
  4. Quel langage pour développer un logiciel de télétransmission
    Par gidebo dans le forum Langages de programmation
    Réponses: 3
    Dernier message: 28/08/2003, 14h19
  5. Idée pour développer un logiciel de peer to peer
    Par Jibees dans le forum Développement
    Réponses: 5
    Dernier message: 09/06/2003, 22h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo