IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Création d'une DLL contenant une fonction dépendant du reste du code [Débutant(e)]


Sujet :

C++

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 28
    Points : 9
    Points
    9
    Par défaut Création d'une DLL contenant une fonction dépendant du reste du code
    Bonjour,

    Je dispose d'un code avec un main de plus de 700 lignes que j'ai découpées en de nombreuses fonctions. Je souhaiterais maintenant réaliser plusieurs DLL avec ces fonctions. Cependant chaque fonction dépende des autres fonctions que ce soit au niveau des variables ou des actions quelle va réaliser.

    Comment dois-je procéder pour réaliser ces DLL s'il vous plait?

    J'ai essayé d'en réaliser une avec une fonction très courte qui sert à définir la période souhaitée mais lorsque je compile on me répond que la variable "periode" n'est pas référencé et de même pour la fonction "write_spi_reg".

    Merci d'avance pour votre aide.

    Karen.

  2. #2
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 031
    Points : 11 475
    Points
    11 475
    Billets dans le blog
    11
    Par défaut
    Pourquoi faire une DLL par fonction? Ca me semble beaucoup...

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 28
    Points : 9
    Points
    9
    Par défaut
    Par la suite je vais devoir passer ce code sous labview donc si j'ai des DLL se sera plus facile pour réaliser mon code (enfin il me semble). Une DLL par fonction pour que se soit plus facile par la suite de câbler les entrées/sorties sous labview.

  4. #4
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 195
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 195
    Points : 17 162
    Points
    17 162
    Par défaut
    une dll ou plusieurs, ce sera pareil.
    tu peux en faire plusieurs, si elles parlent de choses différentes.

  5. #5
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 28
    Points : 9
    Points
    9
    Par défaut
    D'accord. Je voulais commencer par en faire juste une mais je suis bloquée dès la création du fichier .dll comme je l'ai décris dans mon premier message, pensez-vous pouvoir m'aiguiller s'il vous plait?

    Merci d'avance.

  6. #6
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 195
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 195
    Points : 17 162
    Points
    17 162
    Par défaut
    Pas moi, malheureusement.
    Mais si tu regardes sur le site de LabView, il doit certainement y avoir une documentation sur ces fameuses DLL.

  7. #7
    Expert éminent sénior
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2005
    Messages
    5 153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Février 2005
    Messages : 5 153
    Points : 12 264
    Points
    12 264
    Par défaut
    Contrairement aux .so sous Linux, les Dll doivent être des modules exécutables ayant résolus tous leurs "liens" dés leur compilations.
    Une Dll est donc bien plus proche d'un exécutable que d'une librairie statiques.
    Faire des fonctions qui dépendent trop les une des autres, c'est un problème classique de conception.
    Il faut que vous conceviez votre application en couches indépendantes, et une fois qu'elles sont indépendantes, vous pourrez construire facilement une Dll par couche.

  8. #8
    Expert éminent sénior

    Avatar de dragonjoker59
    Homme Profil pro
    Software Developer
    Inscrit en
    Juin 2005
    Messages
    2 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Software Developer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2005
    Messages : 2 031
    Points : 11 475
    Points
    11 475
    Billets dans le blog
    11
    Par défaut
    Et après, il y a deux manières de concevoir une DLL:
    - Ne pas respecter la spécification officielle : bibliothèque dynamique de fonctions et classes, à l'opposé .lib, qui sont des bibliothèques statiques de fonctions et de classes ;
    - Respecter la spécification officielle : plus ou moins la même chose, mais avec un DllMain et tout le bousin ;

    Il faut donc te renseigne sur le type de DLL dont LabView a besoin.

  9. #9
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 28
    Points : 9
    Points
    9
    Par défaut
    D'accord merci. Vous pensez qu'avec le code que j'ai actuellement où la plupart des fonctions dépendent les une des autres je ne peux pas m'en sortir simplement?

    Je vais aussi me renseigner sur le type de DLL que Labview a besoin.

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 128
    Points : 33 040
    Points
    33 040
    Billets dans le blog
    4
    Par défaut
    Salut,

    le principal problème c'est que tes fonctions partagent des variables comme tu dis.
    T'es sur que c'est nécessaire ? Si c'est des globales, surement pas.
    Si tu peux avoir des fonctions indépendantes, après tu fais ce que tu veux

  11. #11
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 28
    Points : 9
    Points
    9
    Par défaut
    Merci pour votre aide, je vais voir ce que je peux faire.

  12. #12
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 379
    Points : 41 573
    Points
    41 573
    Par défaut
    Il est possible d'écrire des DLLs même avec des dépendances circulaires, mais c'est non-trivial.

  13. #13
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2015
    Messages : 28
    Points : 9
    Points
    9
    Par défaut
    Merci je vais regarder ce lien plus en détail.

Discussions similaires

  1. creer une DLL contenant une classe
    Par joks93440 dans le forum C++
    Réponses: 6
    Dernier message: 20/12/2013, 17h31
  2. [VBA Excel] Appliquer une macro sur une celulle contenant une valeur
    Par tchauviere dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 21/01/2008, 10h21
  3. utiliser une dll dans une dll
    Par anthonycosson dans le forum MFC
    Réponses: 2
    Dernier message: 09/05/2006, 21h42
  4. Réponses: 1
    Dernier message: 18/04/2006, 12h24
  5. Réponses: 2
    Dernier message: 31/08/2005, 16h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo