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 :

Utiliser une DLL non managé


Sujet :

C++/CLI

  1. #1
    Membre confirmé Avatar de eraim
    Inscrit en
    Mars 2004
    Messages
    98
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mars 2004
    Messages : 98
    Par défaut Utiliser une DLL non managé
    Bonjour,

    Je souhaiterais utiliser la DLL crypt32.dll.
    Cependant, lorsque je l'ajoute en tant que référence dans mon projet C#, j'ai une erreur me disant que ce n'est pas une référence valide ou un composant COM.
    Donc je voudrais créer une classe avec toutes les méthodes et le tag DLLImport, etc... (J'ai trouvé sur le net qu'il fallait faire comme ça)
    Mais comment je trouve la signature de mes méthodes ?
    Bref, comment dois-je m'y prendre ?

    Merci de votre aide.

    eraim

  2. #2
    Membre éclairé
    Inscrit en
    Juillet 2007
    Messages
    357
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 357
    Par défaut
    cherche sur google , dans la msdn et surtout il y a deux superbe tuto sur l interoperatibilite dans les tuto de developez.com

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Mars 2008
    Messages : 88
    Par défaut
    Il faut passer par un wrapper et par du code C++/CLI. Ca ne peut pas se faire directement en C#.

    cf les tutos de nico-pyright.

    Bonne journée

  4. #4
    Membre éclairé

    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2003
    Messages
    286
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2003
    Messages : 286
    Par défaut
    Pourquoi ca ne pourrait pas se faire directement en C# ???

  5. #5
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par défaut
    ca peut se faire directement en C#, mais si c'est une grosse encapsulation, il y a des interets à faire à wrapper en C++/CLI

    mes tutos sur l'intéropérabilité : http://nico-pyright.developpez.com/t...c2005/interop/ & http://nico-pyright.developpez.com/t...c2005/interop2

  6. #6
    Membre éclairé

    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2003
    Messages
    286
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2003
    Messages : 286
    Par défaut
    ok merci c'est bien ce qui me semblait

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 8
    Par défaut
    Ca va peut etre pas trop t'aider (je ne connais pas le C#)
    En VB j'utlise la commande DECLARE

    exemple :

    declare Function getUserName Lib "advapi32.dll" Alias "GetUserNameA" _
    (ByVal lpBuffer As String, ByRef nSize As Integer) As Integer

    Je serais super étonné qu'une solution aussi simple ne soit pas dispo dans le C# mais comme j'ai dit je suis une buse dans ce langage.

    Quoiqu'il en soit faut surtout pas ajouter la dll comme reférénce au projet que tu créés

    En espérant avoir aidé..

    A+

    Male

Discussions similaires

  1. Réponses: 5
    Dernier message: 14/01/2008, 16h39
  2. Réponses: 12
    Dernier message: 23/05/2007, 21h40
  3. Réponses: 3
    Dernier message: 19/02/2007, 15h07
  4. Dll managé utilise une dll non managé
    Par DAMVAL dans le forum C++/CLI
    Réponses: 3
    Dernier message: 28/11/2006, 10h36
  5. Réponses: 12
    Dernier message: 30/01/2006, 21h13

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