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

VC++ .NET Discussion :

Création de variables en entrée et en sortie pour l'utilisation dans une DLL


Sujet :

VC++ .NET

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 27
    Points : 13
    Points
    13
    Par défaut Création de variables en entrée et en sortie pour l'utilisation dans une DLL
    Bonjour,

    Je suis ultra débutant en C++ et j'utilise C++ Express 2008.
    J'ai écrit une "routine" de calcul qui fait 8 lignes de code, qui utilise 4 variables doubles (données d'entrée pour le calcul), 2 constantes Pi et un entier et deux variables doubles en sortie reprenant les résultats du calcul.

    Dans ce micro programme je souhaiterais définir les 4 variables nécessaire au calcul comme "paramètres d'entrée" et définir les 2 variables contenant le résultats du calcul comme "paramètres de sortie".

    J'ai cherché sur le forum et sur internet et tout ce que j'ai lu est beaucoup trop avancé pour que je puisse y comprendre quelque chose, à mon niveau c'est encore beaucoup trop avancé et donc compliqué.

    Quelqu'un aurait-il l'amabilité de bien vouloir m'aider, étape par étape, afin de me permettre d'arriver à une solution.

    Première étape : Comment définir les 4 variables doubles comme paramètres d'entrée de cette routine de calcul et surtout OU dans ma routine ?

    Deuxième étape : Comment définir les 2 résultats obtenus comme paramètres de sortie.

    Dans le "projet" (grand mot pour ce que je souhaite faire) je n'ai qu'UN SEUL fichier CPP.

    D'avance un grand merci à tous.

    A toute fin utile j'annexe la routine actuelle.

  2. #2
    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
    C'est du C++ natif ou .Net ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 27
    Points : 13
    Points
    13
    Par défaut
    Bonne question Médinoc, mais je ne puis te répondre, j'utilise C++ Express 2008 (version gratuite et limitée de C++).

    Comment savoir si C++ Express 2008 est du natif ou du .Net. Lors de l'installation j'ai noté que les modules suivant ont été installé :

    Ms .Net Framework 3.5 ainsi que la version française;
    Kit de développement Ms SDK pour visual studio 2008 en ce compris Haeder, Lib, Express Tools for .Net Framework (86) et le tools for Win32 (X86);
    Ms Visual C++ Express Edition 2008;
    et enfin MSDN Express Lib pour visual studio 2008.

    Merci encore de ta réponse.

  4. #4
    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
    VS Express 2008 permet de faire les deux.
    C'est le type de projet qui compte: Est-ce un projet Win32 ou un projet CLR ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 27
    Points : 13
    Points
    13
    Par défaut
    Ayant suivit le guide de création d'un projet, j'ai refait la suite des manoeuvres et le guide m'a fait excécuter les actions suivantes :

    Nouveau projet > type de projet : Win32 > Modèles Visual Studio installé : Application console Win32 > nom du projet : Game > OK

    Dans l'assitant "Application Win32" > Suivant
    Dans "Paramètres de l'application" sélection de "Application console" et "Projet vide"

    Donc pour répondre à ta question je crois que c'est un projet Win32 mais ai-je bien choisi le "type de projet" pour ce que je désire faire ?

    Dans la fenêtre Nouveau projet/Types de projets, trois possibilités sont offertes avec une explication :

    CLR : Projet de création de classes à utiliser dans d'autres applications;
    Win32 : Projet de création d'une application console Win32;
    Général : Projet d'utilisation d'un système de génération externe.

    Pour rappel la "routine" de calcul écrite devrait être utilisée dans un autre projet développé avec un autre outil de développement (WinDev pour ne pas le cité) et donc je crois, sauf erreur de ma part, que je dois passer par une DLL que j'appellerais dans WinDev.

    N'aurais-je pas du choisir un autre type de projet ?

    Encore merci de ta réponse.

  6. #6
    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
    Apparemment, tu as donc créé un projet Win32, c'est du natif.

    Le problème majeur, c'est que je ne connais pas assez WinDev pour savoir ce qu'il attend d'une DLL...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    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
    En fait, pour ça, tu devrais plutôt regarder dans notre forum consacré à WinDev...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    27
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juin 2007
    Messages : 27
    Points : 13
    Points
    13
    Par défaut
    Windev ne me posera aucun problème, l'appel à une Dll se fait simpement :

    <Résultat> = AppelDLL32(<Nom de la DLL>, <Nom de la fonction> [, <Paramètre 1> [, <Paramètre 2> [,... <Paramètre n>]]]).

    en respectant les types prévus pour les paramètres.

    Je dois donc pouvoir en C++ Express 2008 créer une DLL dans laquelle, comme je l'ai spécifié avant, je dois passer en paramètres des données en provenant de l'extérieur (WinDev).

    La routine que j'ai écrite fonctionne parfaitement avec des paramètres définis en interne. Dans la version finale, ces paramètres proviendraient de l'extérieur (externes) mais comment définir des paramètres externe en C++ express 2008.

    Je cherche dans l'aide locale et en ligne dans le C++ Express 2008 depuis plusieurs jours et je n'ai pas encore trouvé de réponse mais je suis certain que cela doit être possible; le tout est de trouver comment et si c'est expliqué , et je cherche, je cherche, ... peut-être dans une mauvaise direction.

    Si tu as déjà résoulu ce genre de problème, peux-tu diriger ma recherche.

    D'avance merci de ta réponse.

  9. #9
    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
    J'ai du mal à comprendre ce que tu appelles "paramètres externes" et "paramètres internes"...

    Pour moi, les fonctions d'une DLL prennent des paramètres "tout simplement"...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

Discussions similaires

  1. Réponses: 2
    Dernier message: 20/05/2015, 17h49
  2. Réponses: 2
    Dernier message: 23/12/2014, 10h05
  3. Réponses: 3
    Dernier message: 26/02/2014, 12h20
  4. [SP-2010] Création d'un HttpHandler pour l'utilisation dans une webpart
    Par Guimauve18 dans le forum Développement Sharepoint
    Réponses: 0
    Dernier message: 10/05/2011, 17h05
  5. Réponses: 6
    Dernier message: 21/04/2009, 15h11

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