52 votes

Comment fonctionne le modèle de licence des composants .Net basé sur Licenses.licx ?

J'ai rencontré plusieurs fournisseurs de composants .Net tiers qui utilisent un système de licence. Sur une copie d'évaluation, les composants s'affichent avec un écran d'avertissement ou un filigrane ou un indicateur de ce type. Sur une machine sous licence, un Licences.licx est créé - avec ce qui semble être juste le nom complet/les identifiants de l'assemblée. Ce fichier doit être inclus lorsque l'assemblage client est construit.

  • Comment ce modèle fonctionne-t-il ? Tant du point de vue des fournisseurs de composants que de celui des utilisateurs.
  • À quoi sert le fichier .licx ? Doit-il être enregistré ? Nous avons eu un certain nombre de problèmes avec le bon ou le mauvais fichier .licx qui a été enregistré, etc.

24voto

logicnp Points 4509

Ce n'est pas correct. Le fichier licx est très important et est nécessaire pour que l'application hôte soit construite avec les informations de licence correctes incorporées dans celle-ci. Il est donc essentiel que les fichiers licx soient également inclus dans le contrôle de source. Sinon, une personne qui vérifie le code source sur une autre machine n'aura pas le fichier licx et la construction peut échouer ou ne pas avoir les informations de licence appropriées pour les composants utilisés dans l'exe.

14voto

aksangrav Points 221

Presque tout ce qui concerne les licences .Net est expliqué aquí . Pas besoin de réécrire, je pense.

Il est préférable d'exclure les fichiers de licence du projet dans le contrôle de la source, si vous le pouvez. Sinon, l'édition des composants visuels peut s'avérer pénible. De même, il n'est pas nécessaire de stocker les fichiers de licence dans le dépôt de contrôle de la source.

J'espère que cela vous aidera.

10voto

Denis Points 2122

C'était un bon article sur le sujet : Cliquez ici

Afin de déployer une application avec des composants sous licence comme TX Text Control, le fichier EXE doit avoir une licence correcte.

Le mécanisme de licence .NET recommande d'ajouter les licences à l'EXE - l'assemblage appelant.

---- Que se passe-t-il dans le détail ?

Si vous faites glisser et déposez un TextControl de la boîte à outils Visual Studio vers un formulaire, Visual Studio crée un fichier licenses.licx et y inclut les informations relatives à la licence. Ce fichier est situé dans le même dossier que votre fichier de projet.

Important : Le fichier licenses.licx ne contient pas la chaîne de licence elle-même. Il contient uniquement des informations sur les composants sous licence . Dans le cas du TX Text Control (TXTextControl.TextControl), la chaîne suivante est ajoutée :

TXTextControl.TextControl, TXTextControl, Version=15.0.700.500, Culture=neutral, PublicKeyToken=6b83fe9a75cfb638

Comme vous pouvez le voir, il contient le nom de l'espace de noms et du contrôle, la version de l'assemblage, des informations sur la culture et le jeton de clé publique unique. Sur la base de ces informations, le compilateur de licence (lc.exe) compile la chaîne de licence réelle qui sera intégrée à l'assemblage exécutable. Le lc.exe est un petit utilitaire du SDK .NET Framework utilisé par Visual Studio pendant le processus de construction.

---- Que faire si j'utilise le contrôle de texte TX dans un contrôle utilisateur ?

Dans ce cas, vous devez également ajouter la licence à l'exécutable principal. Par conséquent, vous pouvez simplement glisser et déposer un TextControl dans un formulaire factice du projet principal, de sorte que le fichier licenses.licx et les références soient ajoutés automatiquement.

Après cela, vous pouvez à nouveau supprimer le TextControl de ce formulaire. Ou vous pouvez simplement copier ou créer un fichier licenses.licx dans le dossier principal du projet. Dans ce cas, vous devez également ajouter manuellement une référence au TextControl TX.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X