Fichier ComponentOne manquant.
-
03-07-2019 - |
Question
Je travaille sur une application qui utilise beaucoup le composant C1FlexGrid de ComponentOne. Parmi les dizaines que nous utilisons, il manque 3 à leur fichier licences.licx, ce qui entraîne l'affichage de l'écran de démarrage de la démo lors du démarrage de l'application.
Existe-t-il un moyen de déterminer les formulaires à l'origine de ce problème? À moins de vérifier des centaines de répertoires à la main, je ne vois pas comment.
La solution
Selon la documentation Microsoft, seul l'assembly exécutable nécessite un fichier licenses.licx. Les assemblys Dll contenant des formulaires en créeront toujours un, mais celui-ci est ignoré. Cela a aussi été mon expérience. Je suggérerais d'ouvrir chaque formulaire dans la vue du concepteur et de le reconstruire dans cette vue. Cela ajoutera généralement toutes les entrées de licence manquantes au licences.licx. Cependant, il ne mettra pas à jour les entrées existantes. Cela peut poser problème si vous avez mis à jour vos composants. Pour ComponentOne, vous pouvez généralement modifier le fichier licenses.licx et supprimer les informations de version après le nom de l'assembly. Certains composants tiers sont plus précis et toucher leurs informations de version provoque des erreurs lors de la compilation.
À mon avis, le cadre de gestion de licences .NET est lourd et constitue une charge inutile pour les développeurs. Il existe des moyens beaucoup plus simples de garantir le respect des licences de composants.
Autres conseils
Vous n'avez pas à ouvrir tous les formulaires. Chaque projet a un seul fichier licences.licx. Assurez-vous simplement que C1FlexGrid est référencé dans ces fichiers, puis effectuez une reconstruction complète (Build | Rebuild All).
Cela devrait régler le problème.
Parfois, l'ouverture de formulaires et la reconstruction de la solution complète ne fonctionnent même pas. Donc dans cette situation. Il vous suffit de faire glisser un contrôle ComponentOne de la boîte à outils vers votre formulaire (vous pouvez le supprimer ultérieurement). Ce glisser-déposer générera licences.licx automatiquement dans le dossier Propriétés.
ComponentOne a un utilitaire qui va (re) générer le fichier licences.licx pour un projet existant.
Article d'origine: https: // www. grapecity.com/blogs/licensing-and-licenses-licx-file-licxgenerator-tool
Instructions:
L'outil LicxGenerator
Heureusement, [générer le fichier license.licx] peut être automatisé, et Un grand merci à notre client Dom Sinclair pour son inspiration. Le [lié ci-dessous] L'outil LicxGenerator crée un fichier license.licx avec licence entrées d'information pour tous les contrôles trouvés sous un chemin spécifié. Si vous le lancez, il vous demande de parcourir le dossier des fichiers binaires, puis de mettre le fichier généré sous le même chemin. Si vous avez besoin de plus de contrôle, vous peut l'exécuter avec des options en ligne de commande. Vous pouvez aussi le lancer avec d’autres tâches automatisées.
Utilisation:
LicxGenerator [-r] [-p prefix] [-s] [sourcePath] [outputPath]
Paramètres:
-r
: pour la recherche récursive dans les sous-dossiers;
-p
: recherchez uniquement dans les fichiers dont les noms commencent par le préfixe spécifié;
-s
: mode silencieux.Si les paramètres
sourcePath
et-s
ne sont pas définis, l'utilitaire affiche le dialogue de sélection de dossier. SioutputPath
n'est pas défini, il sera identique à la valeursourcePath
.Pour générer un fichier licences.licx pour votre projet:
Générez d'abord votre projet, de sorte que le dossier de sortie contienne tous binaires;
Exécutez LicxGenerator avec le chemin d'accès au dossier de sortie du projet;
Prenez le fichier license.licx généré et ajoutez-le au projet.
Cet outil gratuit vous fera gagner beaucoup de temps pour creuser les licences problèmes.