SIN 1 : Maquettage d une solution en réponse à un cahier des charges. Document ressource : Utilisation du composant DLL dans ProfiLab Expert

Documents pareils
Allegroupe. Système de gestion des paiements préautorisés

Mise à jour d avast! et de vos logiciels Ciel

Utilisation de l outil lié à MBKSTR 9

MODE D EMPLOI OUTLOOK ADD-IN POUR SELECTLINE

LES BIBLIOTHEQUES DE WINDOWS 7

Comment se connecter au VPN ECE sous vista

Sauvegarder sa messagerie Outlook 2010

Le langage C. Séance n 4

J'installe FastStone Image Viewer. Installer le logiciel Découvrir Paramétrer

1) Installation de Dev-C++ Téléchargez le fichier devcpp4990setup.exe dans un répertoire de votre PC, puis double-cliquez dessus :

Système de vidéosurveillance pour Pocket PC

SOMMAIRE. Présentation assistée sur ordinateur. Collège F.Rabelais 1/10

Exporter des écritures. Importer des écritures. Depuis EBP Comptabilité.

Utiliser Dev-C++ .1Installation de Dev-C++ Table des matières

Espace pro. Installation des composants avec Firefox. Pour. Windows XP Vista en 32 et 64 bits Windows 7 en 32 et 64 bits

EPREUVE OPTIONNELLE d INFORMATIQUE CORRIGE

Unity Real Time 2.0 Service Pack 2 update

Installation en réseau de ClicMenu et des logiciels de Kitinstit

Guide d utilisation de PL7 Pro Récupérer ou transférer un programme

Sélection du contrôleur

PROCEDURE D EXPORT-IMPORT DU CERTIFICAT InVS INTERNET EXPLORER

Préparation d une flotte d IPADS dans une école via ITUNES

KWISATZ LA GESTION DES REMISE EN BANQUE

Installation et configuration du serveur syslog sur Synology DSM 4.0

ZOTERO. Installation. Bibliothèque de Pharmacie. Service Formation

MISE AU POINT FINANCIÈRE GUIDE DE L UTILISATEUR. Le logiciel MISE AU POINT FINANCIÈRE est offert sous licence par EquiSoft.

FORMATION MULTIMÉDIA LVE

Sommaire. 2. L accès aux modules. 1. Aspects techniques. 1.1 Le matériel requis 2

Avertissement : Nos logiciels évoluent rendant parfois les nouvelles versions incompatibles avec les anciennes.

Cahier Technique Liaison Comptabilité Api / Sage ECF

Rapports d activités et financiers par Internet. Manuel Utilisateur

GUIDE D UTILISATION. Gestion de compte. à destination des entreprises (Employeurs et Organismes de Formation)

Guide d installation CLX.PayMaker Office (3PC)

Notice de présentation. La mise à jour de la référence bancaire sous TelePAC

Introduction à Eclipse

CREER ET ANIMER SON ESPACE DE TRAVAIL COLLABORATIF

1. Création du profil

TABLE DES MATIÈRES 1. DÉMARRER ISIS 2 2. SAISIE D UN SCHÉMA 3 & ' " ( ) '*+ ", ##) # " -. /0 " 1 2 " 3. SIMULATION 7 " - 4.

Mise en route de Cobian Backup

Correction des Travaux Pratiques Organiser son espace de travail

Importation et exportation de contenu

Manuel d utilisation du Guichet électronique V2

ODH. Mon Espace. Manuel d utilisation. MON ESPACE ODH Manuel d utilisation. Une question? Contactez le service client au

ENDNOTE X2 SOMMAIRE. 1. La bibliothèque EndNote 1.1. Créer une nouvelle bibliothèque 1.2. Ouvrir une bibliothèque EndNote 1.3. Fermer une bibliothèque

Utilisation du logiciel ModellingSpace

Guide d utilisation de la clé mémoire USB

Mallette Métrologie Contrôle des spectrophotomètres

Importation de fichiers Eagle

Your Detecting Connection. Manuel de l utilisateur. support@xchange2.net

3 : créer de nouveaux onglets dans Netvibes Cliquer sur le bouton «+» et renommer le nouvel onglet (par exemple Encyclopédies en ligne)

Projet De Stijl Plate-forme pour robots mobiles

AP1.1 : Montages électroniques élémentaires. Électricité et électronique

Securexam Consignes pour l EFU Les 2, 3 et 4 juin 2015

COMMENT TROUVER VOS FUTURS CLIENTS À L INTERNATIONAL? 05/03/2015 Creditsafe France

Archivage de courriels avec Outlook ( )

ZOTERO Un outil gratuit de gestion de bibliographies

Création et utilisation de formulaire pdf

Chaque ordinateur est constitué de différentes unités de stockage de données (Disque dur, Graveur ) que l on peut imaginer comme de grandes armoires.

COMMENT CREER SIMPLEMENT UN TABLEAU DE BORD AVEC SAS BI DASHBOARD 4.3?

Styler un document sous OpenOffice 4.0

MO-Call pour les Ordinateurs. Guide de l utilisateur

Initiation à LabView : Les exemples d applications :

Gestion des références bibliographiques. Comment simplifier la gestion des références bibliographiques?

Manuel d'installation de GESLAB Client Lourd

COMMANDER A DISTANCE LE ROBOT-PONG ETUDE DE LA TELECOMMANDE (2 nde PARTIE)

Prendre en main le logiciel ActivInspire 1.4

COMPTA. Description des Commandes

Introduction à Windows 8

Tutoriel Sage One Edition Expert-Comptable. - Le cabinet d Expertise-Comptable doit appeler le Service Client Sage One au

LOGICIEL MARCHES PUBLICS

PRISE MAIN DE GOOGLE MAP ET GOOGLE EARTH DANS LE CADRE DE LA PREPARATION ET L EXPLOITATION D UNE JOURNEE DE TERRAIN

GESTION DES PISTES ET OPPORTUNITES

GUIDE D UTILISATION. Gestion de compte. à destination des intermédiaires

Access et Org.Base : mêmes objectifs? Description du thème : Création de grilles d écran pour une école de conduite.

MANUEL D UTILISATION - Précis Poste de Traitement d Images 1 - Déconvolution

Atelier Travailler vos photos Mars 2015

Ces Lettres d informations sont envoyées aux extranautes inscrits et abonnés sur le site assistance (voir point N 3).

AGASC / BUREAU INFORMATION JEUNESSE Saint Laurent du Var - E mail : bij@agasc.fr / Tel : CONSIGNE N 1 :

DE MODIFICATION PROCEDURE ELYXBADGE APPLICATION. PI Électronique Restobadge

Tutoriel : Créer un site web simple avec Composer. Fiche consigne Page 1 sur 6

26 Centre de Sécurité et de

Enregistrement de votre Géorando Maxi Liberté

Paramétrage des navigateurs

Rechercher et supprimer les doublons!

Comment réaliser une capture d écran dans Word. Alors comment ouvrir une page Word?

Réalisez votre propre carte de vœux Éléctronique

Tapez le titre de la page «BASTIA ville méditerranéenne», puis allez deux fois à la ligne à l aide de la touche Entrée.

GUIDE POUR RESERVER UN TERRAIN

Gestion des documents avec ALFRESCO

Silhouette Studio Leçon N 2

Guide d utilisation de «Partages Privés»

Veuillez noter que vous devez changer de Code d Accès Internet tous les 60 jours pour des raisons de sécurité.

GUIDE D UTILISATION. Gestion de compte. à destination des CFA

EXCEL Les tableaux croisés dynamiques

EVOLUTION 7.1 Déroulement DREAM INFO 1 Dossier 23 Ciel Gestion Commerciale.

Notice d'utilisation Site Internet administrable à distance

Windows Internet Name Service (WINS)

GUIDE D UTILISATION DU LOGICIEL DE TELE-MAINTENANCE. TEAM VIEWER Version 7.

ANNEXE 8 : Le Mailing

FAIRE SES COMPTES AVEC GRISBI

Transcription:

SIN 1 : Maquettage d une solution en réponse à un cahier des charges Document ressource : Utilisation du composant DLL dans ProfiLab Expert

Sommaire 1 Introduction... 3 2 Réalisation d une DLL... 3 2.1 Création du projet... 3 2.2 Programmation... 3 2.3 Fonctions exportées... 4 3 Utilisation d une DLL... 5 4 Réalisation d une DLL pour ProfiLab Expert... 5 4.1 Introduction... 5 4.2 Réalisation de la DLL... 5 4.2.1 Fonction NumInputs... 6 4.2.2 Fonction NumOutputs... 6 4.2.3 Fonction GetInputName... 7 4.2.4 Fonction GetOutputName... 7 4.2.5 Fonction CSimStart... 8 4.2.6 Fonction CCalculate... 9 4.2.7 Fonction CSimStop... 9 4.2.8 Fonction CConfigure... 9 4.3 Création de la DLL... 10 5 Utilisation du composant DLL sous ProfiLab Expert... 10 Page 2/10 Ressources STI2D- SIN

1 Introduction Une DLL (Dynamic Link Library) est un fichier contenant des fonctions logicielles (programmation dans différents langages possibles) qui peuvent être utilisées par plusieurs applications. Son utilisation est très intéressante. Elle permet la mise en commun de bibliothèques de fonctions dans plusieurs applications. Ce document décrit la réalisation et l utilisation d une DLL en C++ à l aide du logiciel DevC++. 2 Réalisation d une DLL 2.1 Création du projet Pour créer une DLL, il faut d abord créer un projet et configurer le logiciel. Lancer le logiciel DevC++ : Dans le menu Fichier, cliquer sur Nouveau puis sur Projet..., ou bien sur l icône. Sélectionner l application DLL, sélectionner projet C++, puis entrer un nom de fichier pour la DLL et cliquer OK. Sélectionner le dossier de travail et un nom de projet. Le projet est créé ainsi que 2 fichiers : dll.h et dllmain.cpp. Sur la fenêtre à gauche de l écran apparaît l arborescence du projet. 2.2 Programmation Dans l arborescence du projet, cliquer sur le fichier dll.h. Par défaut, le logiciel a écrit une architecture de programme. Ce fichier contient le prototype des fonctions, les types personnalisés, les structures... Inclure dans ce fichier la ligne suivante : Inclure également dans ce fichier la définition de toutes les fonctions de la DLL. Page 3/11 Ressources STI2D- SIN

Celle ligne définit la commande DLLEXPORT La fonction declspec(dllexport) permet au compilateur de générer les noms d exportation des fonctions (dans un fichier avec l extension.a et.def ). Le code externe «C» permet de conserver les noms des fonctions (sans décoration) à la compilation. En effet certains compilateurs modifient les noms des fonctions créées en ajoutant des chiffres ou des symboles tel que @. Dans l arborescence du projet, cliquer sur le fichier maindll.cpp et réaliser les fonctions souhaitées. Lorsque le programme est termine. Il faut compiler le projet pour obtenir le fichier.dll. Dans le menu Exécuter, cliquer sur Tout Reconstruire ou sur l icône. Si des erreurs sont présentes dans le programme, elles apparaissent en bas de l écran. 2.3 Fonctions exportées Il est intéressant de vérifier si les fonctions exportées sont bien celles désirées, sans décoration. Il existe pour cela des logiciels tel que DllExp. Sélectionner la fonction Load functions from the following DLL file et indiquer le fichier puis OK. Le résultat est le suivant : Le compilateur a exporté les fonctions sous deux noms différents : les fonctions avec le nom correct et avec le nom décoré. Par exemple : CCalculate et CCalculate@12 correspondent à la même fonction (même adresse). Page 4/11 Ressources STI2D- SIN

3 Utilisation d une DLL Lors de la réalisation du projet, il faut intégrer la DLL. Cela permet d utiliser les fonctions de la DLL comme si on avait fait un include. Pour cela : Dans le menu Projet, cliquer sur Option du projet ou sur l icone Sélectionner l onglet Paramètres puis sur Ajouter fichier. Ajouter le fichier iowkit.lib et cliquer OK. 4 Réalisation d une DLL pour ProfiLab Expert 4.1 Introduction ProfiLab Expert est un logiciel de programmation graphique. Il intègre l utilisation d un nombre important de matériels tels que composant d interfaçage, matériels de mesures... Mains il est possible de gérer des matériels non intégrés au logiciel, de réaliser des calculs très complexes en utilisant le composant DLL fourni dans les librairies du logiciel Pour cela il faut concevoir une DLL dans un langage de programmation C, C++, Basic, Delphi. 4.2 Réalisation de la DLL La réalisation de la DLL se fait par la création d un projet (voir paragraphe 2.1). La différence réside dans la réalisation du fichier dllmain.cpp. L architecture proposée ne convient pas. Il faut out effacer. Il faut tout d abord inclure le fichier d en-tête précédent avec l instruction : #include "dll.h" L utilisation de la DLL sous ProfiLab Expert impose la présence des fonctions suivantes : Nom de la fonction unsigned char _stdcall NumInputs() unsigned char _stdcall NumOutputs() void _stdcall GetInputName(unsigned char Channel,unsigned char *Name) void _stdcall GetOutputName(unsigned char Channel,unsigned char *Name) Rôle Définir le nombre d entrées du composant DLL Définir le nombre de sortie du composant DLL Définir le nom de chaque entrée du composant DLL Définir le nom de chaque sortie du composant DLL Page 5/11 Ressources STI2D- SIN

void _stdcall CSimStart(double *PInput, double *POutput, double *PUser) void _stdcall CCalculate(double *PInput, double *POutput, double *PUser) void _stdcall CSimStop(double *PInput, double *POutput, double *PUser) Définir les conditions initiales du composant DLL lors de l exécution du programme ProfiLab Expert Définir le fonctionnement interne du composant DLL lors de l exécution du programme ProfiLab Expert Définir l arrêt du programme Profilab Expert void _stdcall CConfigure(double *PUser) Définir les configurations du composant DLL (lors de l élaboration du programme sous ProfiLab Expert) Ce sont ces fonctions de la DLL qui doivent être accessibles par le logiciel ProfiLab Expert. Il faut donc les exporter. Compléter le fichier maindll.cpp de la façon suivante pour créer les fonctions précédentes : Remarques : L ajout de la commande DLLEXPORT, définie dans le fichier d en-tête permet l export des fonctions. La commande stdcall permet de gérer les paramètres de la pile lors de l appel de la fonction. 4.2.1 Fonction NumInputs Cette fonction doit retourner un octet dont la valeur détermine le nombre d entrées de la DLL. Cela se matérialisera par autant de broches d entrées sur le symbole DLL dans ProfiLab Expert. Exemple pour 1 entrée : 4.2.2 Fonction NumOutputs Cette fonction doit retourner un octet dont la valeur détermine le nombre de sorties de la DLL. Cela se matérialisera par autant de broches de sorties sur le symbole DLL dans ProfiLab Expert. Page 6/11 Ressources STI2D- SIN

Exemple pour 3 sorties : 4.2.3 Fonction GetInputName Cette fonction permet de donner un nom aux différentes entrées. Elle est exécutée autant de fois qu il y a d entrées. Elle nécessite le passage de 2 paramètres : Channel *Name Octet non signé Pointeur sur octet non signé Désigne le numéro de l entrée (la 1ère entrée a le n 0) Désigne une suite d octets contenant le nom de l entrée (doit se terminer par 0) Exemple pour 1 entrée : 4.2.4 Fonction GetOutputName Cette fonction permet de donner un nom aux différentes sorties. Elle est exécutée autant de fois qu il y a de sorties. Elle nécessite le passage de 2 paramètres : Channel *Name Octet non signé Pointeur sur octet non signé Désigne le numéro de l entrée (la 1ère entrée a le n 0) Désigne une suite d octets contenant le nom de l entrée (doit se terminer par 0) Exemple pour 2 sorties : Page 7/11 Ressources STI2D- SIN

4.2.5 Fonction CSimStart Cette fonction permet d initialiser le composant DLL (par exemple : fixer les valeurs initiales de variables internes et (ou) des sorties de la DLL). Elle nécessite le passage de 3 paramètres : *PInput *POutput *PUser valeurs des entrées valeurs des sorties mémoire où il est possible de stocker des variables La première entrée est l entrée numéro 0. La valeur de cette entrée est accessible par la variable PInput[0]. La première sortie est la sortie numéro 0. La valeur de cette sortie est accessible par la variable POutput[0]. La seconde sortie est la sortie numéro 1. La valeur de cette sortie est accessible par la variable POutput[1]. ProfiLab Expert prend en compte la tension et non le niveau logique. Pour un niveau logique 0, il faudra mettre la variable à 0. Pour un niveau logique 1, il faudra la mettre à 5. Exemple d initialisation de 2 sorties : Page 8/11 Ressources STI2D- SIN

4.2.6 Fonction CCalculate Cette fonction permet de définir le fonctionnement interne du composant DLL (par exemple : comment varie la sortie de la DLL). Elle nécessite le passage de 3 paramètres : *PInput *POutput *PUser valeurs des entrées valeurs des sorties mémoire où il est possible de stocker des variables Exemple avec 1 entrée et 2 sorties : 4.2.7 Fonction CSimStop Cette fonction est exécutée lors de l arrêt du programme ProfiLab Expert. Elle permet par exemple de fermer un fichier, clore une communication. Elle nécessite le passage de 3 paramètres : *PInput *POutput *PUser valeurs des entrées valeurs des sorties mémoire où il est possible de stocker des variables S il n y a aucune opération à effectuer à l arrêt du programme, cette fonction doit être vide, mais présente dans la DLL. 4.2.8 Fonction CConfigure Cette fonction permet de configurer le composant DLL avant l exécution du programme ProfiLab Expert. Elle est optionnelle. Elle permet par exemple de choisir le nombre d entrées, le nombre de sorties, des conditions initiales... Page 9/11 Ressources STI2D- SIN

Elle nécessite le passage d un paramètre *PUser mémoire où il est possible de stocker des variables Un exemple, pour un compteur, est donné dans le dossier d installation du logiciel. 4.3 Création de la DLL Lorsque le programme est termine. Il faut compiler le projet pour obtenir le fichier.dll. Dans le menu Exécuter, cliquer sur Tout Reconstruire ou sur l icône. Si des erreurs sont présentes dans le programme, elles apparaissent en bas de l écran. Remarque : Si ProfiLab Expert est ouvert et utilise la DLL, il n est alors pas possible de recompiler. Il faut absolument le fermer. 5 Utilisation du composant DLL sous ProfiLab Expert Sous ProfiLab Expert, créer un nouveau fichier Dans le menu des librairies de composants, sélectionner Divers, puis le menu Divers. Sélectionner le composant Import DLL en cliquant dessus puis le positionner dans la zone de programmation graphique Double-cliquer sur le symbole puis sur Importer DLL... et sélectionner le fichier.dll créé. Lorsque l opération est réussie, la liste des fonctions créées dans la DLL apparaissent dans la fenêtre Fonctions importées. Si la fonction CConfigure existe dans la DLL, le bouton Configurer... est accessible. Lors d un clic dessus, cette fonction est exécutée. Page 10/11 Ressources STI2D- SIN

Cliquer sur OK et le symbole DLL est mis a jour en tenant compte des entrées et sorties définie dans la DLL. Page 11/11 Ressources STI2D- SIN