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++/CLI Discussion :

[C#/dll C] Comment indiquer un emplacement different de system32 ?


Sujet :

C++/CLI

  1. #1
    Membre �clair�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    349
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2006
    Messages : 349
    Par d�faut [C#/dll C] Comment indiquer un emplacement different de system32 ?
    Salut !

    Je suis d�butant en C# et je doit appeler une fonction contenue dans une dll �crite en C. J'ai regard� dans la FAQ C# et j'ai trouv� comment le faire mais ma dll doit �tre dans le dossier system32.

    Mais si la dll se trouve ailleurs, comment indiquer son emplacement ?

    Merci.

    ++

  2. #2
    R�dacteur
    Avatar de dev01
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    2 451
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 2 451
    Par d�faut
    Fait une recherche google sur le P/Invoke

  3. #3
    Membre du Club
    Inscrit en
    Mai 2006
    Messages
    11
    D�tails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 11
    Par d�faut
    Salut

    Dans la fenetre ''Explorateur de solution'', au niveau de ton projet tu as un dossier r�f�rences. Click droit sur ce dossier puis ajouter une r�ference. Ainsi une fenetre s'ouvre, l� tu click sur parcourir et tu vas chercher ta DLL, puis tu valid ton choix.

    Dans le dossier r�ference tu dois avoir un nouvel item qui � le nom de ta DLL, alors ca y es tu as ajouter ta DLL dans ton projet et tu dois avoir access au objets de ta DLL



    a+ RockCoeur

  4. #4
    Expert confirm�
    Avatar de neguib
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 627
    D�tails du profil
    Informations personnelles :
    �ge : 65
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 627
    Par d�faut
    Citation Envoy� par rockcoeur
    Salut
    Dans la fenetre ''Explorateur de solution'', au niveau de ton projet tu as un dossier r�f�rences. Click droit sur ce dossier puis ajouter une r�ference. Ainsi une fenetre s'ouvre, l� tu click sur parcourir et tu vas chercher ta DLL, puis tu valid ton choix.

    Dans le dossier r�ference tu dois avoir un nouvel item qui � le nom de ta DLL, alors ca y es tu as ajouter ta DLL dans ton projet et tu dois avoir access au objets de ta DLL
    a+ RockCoeur
    Ceci n'est valable que pour une dll manag�e .Net

    C'est effectivement P/Invoke qui est la solution � exploit�e

  5. #5
    Membre �clair�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    349
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2006
    Messages : 349
    Par d�faut
    Re !

    Tout d'abord merci � vous pour votre aide.

    Alors voil� ce que j'ai �crit :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
     
    [DllImport("interface.dll")]
            static extern void interface__open
            (
                int used_port,
                long supply_voltage
            );
    Ensuite j'appelle ma fonction mais malgr� des recherches je n'ai pas trouv� comment indiquer un autre dossier que system32 pour chercher ma dll. Tous les exemples que j'ai vu utilisent des dll situ�es dans system32...

    Voici ce qu'ont donn� mes recherches :
    http://faqcsharp.developpez.com/?pag...syst_apiinvoke
    http://morpheus.developpez.com/dlldotnet/
    http://www.microsoft.com/france/msdn...z-Pinvoke.mspx

    J'avoue que je suis un peu perdu..

    ++

  6. #6
    Membre �clair�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    349
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2006
    Messages : 349
    Par d�faut
    J'ai trouv�, c'�tait tout b�te mais encore fallait-il le savoir... �a ne fonctionnait pas quand j'indiquais un chemin complet parce que je ne doublais pas le backslash...
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
     
    [DllImport("C:\\interface.dll")]
    static extern void interface__open
    (
         int used_port,
         long supply_voltage
    );
    ++

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    55
    D�tails du profil
    Informations personnelles :
    Localisation : France, Gironde (Aquitaine)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 55
    Par d�faut
    Citation Envoy� par SesechXP
    J'ai trouv�, c'�tait tout b�te mais encore fallait-il le savoir... �a ne fonctionnait pas quand j'indiquais un chemin complet parce que je ne doublais pas le backslash...
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
     
    [DllImport("C:\\interface.dll")]
    static extern void interface__open
    (
         int used_port,
         long supply_voltage
    );
    ++


    Et tu peux aussi utiliser le '@' devant la cha�ne, pour �viter de doubler les backslashes :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    [DllImport(@"C:\interface.dll")]

  8. #8
    Membre �clair�
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    349
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2006
    Messages : 349
    Par d�faut
    Merci pour l'astuce

    ++

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. Comment indiquer l'emplacement de la DLL
    Par touhami dans le forum Delphi
    R�ponses: 10
    Dernier message: 13/03/2007, 17h07
  2. R�ponses: 4
    Dernier message: 25/10/2005, 08h48
  3. Comment indiquer un crit�re chiane non vide
    Par le lynx dans le forum MS SQL Server
    R�ponses: 2
    Dernier message: 18/08/2005, 12h38
  4. R�ponses: 13
    Dernier message: 16/03/2005, 11h29
  5. automation excel : comment indiquer la feuille de travail ?
    Par mat_lefebvre dans le forum Access
    R�ponses: 2
    Dernier message: 04/12/2003, 15h14

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