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 :

Problème pour appeler une DLL C en Csharp


Sujet :

C#

  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 9
    Points : 7
    Points
    7
    Par défaut Problème pour appeler une DLL C en Csharp
    Bonjour à tous,
    Je cherche a appeler une DLL en C depuis Csharp.

    J'ai 2 fonctions a appeler

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
      __declspec(dllexport) void fonction1 (char* filepath);
     
      __declspec(dllexport)char* Fonction2 (char* hexstrin);
    Et voici comment je les appele en Csharp

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    [DllImport("madll.dll")]
    public unsafe static extern char* fonction1([MarshalAs(UnmanagedType.LPStr)] string hexstrin);
     
    [DllImport("madll.dll", CharSet = CharSet.Ansi)]
            //string GetDir(StringBuilder filepath); 
            public static extern void fonction2(string filepath);
    Malheuresement le compilateur me renvoie toujours une erreur du type
    un appel a la fonction "fonction1.." a déséquilibré la pile...
    Savez vous d'ou vient le probleme?

    Votre aide me serait très precieuse :-)

    Merci

  2. #2
    Membre du Club Avatar de emiscool
    Profil pro
    architecte logiciel
    Inscrit en
    Octobre 2006
    Messages
    45
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : architecte logiciel

    Informations forums :
    Inscription : Octobre 2006
    Messages : 45
    Points : 51
    Points
    51
    Par défaut
    tu trouvra la solution dans cette discussion
    dll c++ en csharp

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Points : 39 753
    Points
    39 753
    Par défaut
    Tu te compliques trop la vie... pas la peine de faire du code unsafe pour ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [DllImport("madll.dll")]
    public static extern string fonction1(string hexstrin);
    En plus on dirait que tu as inversé fonction1 et fonction2 par rapport aux déclarations en C

  4. #4
    Futur Membre du Club
    Inscrit en
    Mai 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Bonjour a tous et merci pour vos réponses, j ai trouvé la solution a mon problème en suivant ces examples
    http://www.drdobbs.com/184406285;jse...OSKHWATMY32JVN


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [JSTL] problème pour appeler une autre jsp
    Par forHelp dans le forum Taglibs
    Réponses: 3
    Dernier message: 09/11/2007, 11h16
  2. problème pour appeler une liste de catégorie
    Par minie dans le forum Struts 1
    Réponses: 11
    Dernier message: 29/05/2007, 16h39
  3. Problème pour appeler une méthode d'une autre classe
    Par tse_tilky_moje_imja dans le forum Général Python
    Réponses: 7
    Dernier message: 03/03/2006, 13h33
  4. Réponses: 7
    Dernier message: 10/09/2005, 16h49
  5. [DLL] problème pour appeler une fonction d'une DLL
    Par bigboomshakala dans le forum MFC
    Réponses: 34
    Dernier message: 19/07/2004, 11h30

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