Mécanisme de licence de développement / exécution pour une bibliothèque de classe C #? [fermé]

StackOverflow https://stackoverflow.com/questions/1029261

Question

Je développe une bibliothèque de classe .Net (un fournisseur de données) et je commence à réfléchir à la façon dont je gérerais l'attribution de licence à la bibliothèque à des acheteurs potentiels. Par licence, j'entends le mécanisme qui consiste à empêcher l'utilisation de ma bibliothèque par ceux qui ne l'ont pas achetée, pas la licence de logiciel (c'est-à-dire Apache, Gnu, etc.).

Je n'ai jamais traité de licence et, dans le passé, j'ai toujours développé des applications et non des bibliothèques. Je ne veux pas rendre les choses difficiles pour mes clients; sachez qu’il n’est pas possible de le fabriquer. Juste un mécanisme qui me donne une protection décente sans que le client saute à travers des cerceaux ou grince des dents.

Je pense que le mécanisme vérifierait la validité d'une licence lorsque la classe est utilisée en mode de développement et non en mode d'exécution (lorsque le logiciel du client est distribué à ses clients). Je pense que les bibliothèques sont généralement vendues par développeur, mais je ne sais pas comment cela pourrait être accompli sans rendre le mécanisme odieux pour mes clients; peut-être que cela est laissé au système d'honneur.

Je l'ai cherché dans Google et trouvé de nombreuses approches. Idéalement, j'aimerais faire quelque chose qui est généralement accepté et commun, le "droit" manière, les bibliothèques de classes sont concédées sous licence, si cela existe, plutôt que de faire traiter par mes clients un autre mécanisme de licence. Un effort ferme dans la bonne direction sera grandement apprécié!

Était-ce utile?

La solution

Ceci est la solution fournie par .NET

http://www.ddj.com/web-development/184416695

Autres conseils

Lorsque votre client instancie votre bibliothèque de classes, vous devez, dans votre code constructeur, rechercher les licences. Si le fournisseur n'a pas de licence valide / manquante, vous pouvez lancer une exception de licence. Cela empêcherait quelqu'un d'utiliser votre classe / bibliothèque. Vous ne devez le faire qu’une fois, de sorte que si la licence est valide dans une classe, toutes vos autres classes omettent la vérification de la licence.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top