Skip to main content

Informations pour les développeurs de bibliothèques

Astuce

Afin d'éviter les problèmes de cohérence et d'accompagner adéquatement l'utilisateur, veillez à respecter certaines règles de création, de référencement, de chiffrement, de protection et de documentation des bibliothèques.

La description suivante ne donne qu'un aperçu des possibilités de développement de la bibliothèque. Pour une description plus détaillée de ces sujets, consultez les directives "LibDevSummary" pour le développement de bibliothèques.

Pour plus d'informations, consultez : Utilisation des bibliothèques

Général

  • Vous pouvez définir des catégories pour les bibliothèques. Les bibliothèques sont ensuite affichées dans le référentiel de bibliothèques sous ces catégories.

    Pour plus d'informations sur la création de catégories de bibliothèque, consultez : Catégories de bibliothèque

  • Vous pouvez définir un espace de noms pour une bibliothèque afin de permettre un accès sans ambiguïté aux objets intégrés. L'accès devient sans ambiguïté en ajoutant l'espace de noms devant le nom du POU :

    <espace de noms>.<nom de variable>

    Exemple: AC.Module

  • Vous pouvez ouvrir les POU des bibliothèques non chiffrées (*.library) en double-cliquant sur l'entrée correspondante dans le gestionnaire de bibliothèque.

  • Vous pouvez créer les types de bibliothèques suivants :

    • *.library: Bibliothèque d'implémentation (code source de la bibliothèque)

    • *.compiled-library, *.compiled-library-v3: Bibliothèque protégée

      Le code source n'est plus accessible.

    • *_Itfs.library: Bibliothèque d'interfaces

      Contient uniquement des objets utilisés pour la définition d'interface d'un composant (par exemple, des constantes, des structures ou des interfaces) et ne génère aucun code

    • *_Cnt.library: Bibliothèque de conteneurs

      Ne contient pas de POU, mais uniquement d'autres bibliothèques

      Par conséquent, utilisé pour intégrer de manière pratique un ensemble complet de bibliothèques dont les POU sont publiés au niveau supérieur de la bibliothèque de conteneurs

  • Vous pouvez intégrer des bibliothèques externes dans l'application. Les bibliothèques externes sont programmées en dehors de CODESYS dans un langage de programmation différent (exemple : C).

Protection des bibliothèques

  • Protection du code source

    Lorsqu'une bibliothèque est préparée au format "compiled-library", le code source des POU de la bibliothèque n'est plus visible après l'intégration de la bibliothèque dans un projet.

  • Signature

    Dans CODESYS V3 SP15 et supérieur, un certificat est toujours utilisé pour la signature des projets de bibliothèque (*.compiled-library-v3). La signature peut être imposée au moyen d'un paramètre dans l'écran de sécurité. Ensuite, pour générer une bibliothèque compilée, vous avez besoin d'un certificat adapté à la signature de code dans votre profil utilisateur.

    Pour les projets de bibliothèque qui doivent être compatibles avec CODESYS < V3 SP15 (*.compiled-library), seule la signature la moins sécurisée est possible avec une clé privée et un jeton correspondant. Ces méthodes obsolètes ne doivent être utilisées que pour des raisons de compatibilité. Les paramètres sont configurés dans le Renseignements sur le projet sur le Signature languette.

    Remarque : Pour les bibliothèques de signature, vous devez utiliser le compilateur version 3.5.15.0 ou supérieure car un meilleur format de stockage est utilisé.

  • Licence

    Vous pouvez protéger les bibliothèques au moyen d'une licence (dongle ou conteneur logiciel). Les bibliothèques protégées par une licence peuvent être installées dans le référentiel de bibliothèques. Cependant, pour une utilisation dans le projet, la licence valide doit exister sur l'ordinateur. Les licences sont gérées dans le gestionnaire de licences.

Versions de la bibliothèque

  • Plusieurs versions d'une bibliothèque peuvent être installées simultanément sur le système.

  • Vous pouvez avoir plusieurs versions d'une bibliothèque intégrées dans votre projet en même temps. Cependant, nous vous déconseillons de le faire. Dans ce cas, chacune des bibliothèques doit se voir attribuer un espace de noms unique et accéder aux symboles doit être qualifié.

    Exemples: V1.SendBlob,V2.SendBlob

Bibliothèques référencées

  • Vous pouvez intégrer une bibliothèque dans d'autres bibliothèques (bibliothèques référencées). L'emboîtement peut être de n'importe quelle profondeur.

  • Vous pouvez définir si les bibliothèques référencées doivent être visibles dans le gestionnaire de bibliothèques.

  • Vous pouvez intégrer des bibliothèques référencées via des espaces réservés de bibliothèque. De cette façon, vous évitez les problèmes qui pourraient survenir en raison des dépendances de version ou de la nécessité d'utiliser des bibliothèques spécifiques au fournisseur.