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

 .NET Discussion :

Comment exposer les méthodes d'une DLL sans com


Sujet :

.NET

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Points : 45
    Points
    45
    Par défaut Comment exposer les méthodes d'une DLL sans com
    Bonjour à tous

    J'ai besoin d’écrire une dll qui puisse exposer ses méthode sans avoir besoin de l'inscrire comme objet com et sans être obligé de faire une instance de classe.

    On doit pouvoir l'utiliser avec seulement

    [DllImport("MaDll")] et appeler sa/ses méthode(s)

    Par quoi commencer ?

    Par avance merci.

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2011
    Messages
    269
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 269
    Points : 460
    Points
    460
    Par défaut
    Bonjour

    Si tu reste dans un monde 100% .Net, tu n'as pas besoin d'importer des méthodes ou de faire appelle au COM.

    Toute classe/méthodes public dans un DLL (.Net) est visible depuis une autre DLL (.Net aussi). Il faut juste ne pas oublier de "référencer" la DLL que tu veux utiliser.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Points : 45
    Points
    45
    Par défaut
    Tel n'est pas le cas.

    Cette dll doit remplacer une dll existante, et en fait reprendre les fonctions existantes en les améliorants.

    La dll existante est utilisée par plusieurs programmes écrit en dotnet, vb6, windev et delphi et c'est précisément pour ne pas avoir a modifier les programmes que j’essaie de faire cette dll.

    Je débute avec .Net et je suis un peu perdu par moment, a ce jour je sais faire des classes c# et même des dll com grace aux tuto trouvés sur ce site mais sur pour cette dll je bloque.

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par Ekinx93 Voir le message
    La dll existante est utilisée par plusieurs programmes écrit en dotnet, vb6, windev et delphi et c'est précisément pour ne pas avoir a modifier les programmes que j’essaie de faire cette dll.
    Si tu ne veux pas faire du COM, et que cette DLL doit être appelée par des applis non .Net, tu sors du champ d'application de .Net.

    Il n'y a pas de réponse à ta demande.

    Tu peux néanmoins utiliser VS pour faire une DLL native en C++ (et uniquement en C++) - pour cela choisir dasn VS le type de projet Visual C++ /Win32.

    Si tu ne fais pas du "natif", c'est du .Net avec l'option d'exposer en COM, c'est tout.

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Points : 45
    Points
    45
    Par défaut
    Merci pour cette réponse.

    Bon maintenant faut que je me mette au C++

  6. #6
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par Ekinx93 Voir le message
    Merci pour cette réponse.

    Bon maintenant faut que je me mette au C++
    Mais la DLL actuelle est écrite en quoi ?

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Points : 45
    Points
    45
    Par défaut
    C'est la question que tout le monde se pose

    Il y a eu un tel turnover sur ce projet que plus personne ne sait, ni quand exactement ni par qui.

  8. #8
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par Ekinx93 Voir le message
    C'est la question que tout le monde se pose

    Il y a eu un tel turnover sur ce projet que plus personne ne sait, ni quand exactement ni par qui.
    Vous avez perdu les sources ?

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Points : 45
    Points
    45
    Par défaut
    En effet on a que la dll et la liste de ces fonctions et détails sur les paramètres.

  10. #10
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2011
    Messages
    269
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 269
    Points : 460
    Points
    460
    Par défaut
    La dll existante est utilisée par plusieurs programmes écrit en dotnet, vb6, windev et delphi
    J'ai de gros doute sur la capacité d'importer correctement une DLL C++ par tous ces langages.
    A mon avi la dll actuelle publie une interface COM.

  11. #11
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 314
    Points
    13 314
    Par défaut
    Citation Envoyé par antoine.debyser Voir le message
    J'ai de gros doute sur la capacité d'importer correctement une DLL C++ par tous ces langages.
    Sauf si il exporte des classes, je ne vois pas où est le problème, en tout cas, pour dotnet, VB6, et delphi.

    Pour Windev, je ne connais pas.

    Donc peux tu nous dire avec quel langage c'est impossible ?

    Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...


    Une réponse vous a aidé ? utiliser le bouton

    "L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel

  12. #12
    Membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    39
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 39
    Points : 45
    Points
    45
    Par défaut
    Cette dll n'est pas enregistrée dans le système.

    Avec c# on l'utilise avec [DllImport("LaDll")]

    Avec Windev exemple

    x est un entier = ChargeDll(LaDll)

    xy est une chaine = API(LaDll,LaFonction,Leparametre)

    Et rien de plus

  13. #13
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2011
    Messages
    269
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 269
    Points : 460
    Points
    460
    Par défaut
    Et bien j'avais des doutes sur Delphi et Windev.
    Mais vous venez tous deux affirmer pour ces deux langage que c'est possible, du coup pas besoin de COM.

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/05/2006, 11h34
  2. Comment lister les méthodes d'une Form ?
    Par WebPac dans le forum Langage
    Réponses: 12
    Dernier message: 08/03/2006, 18h45
  3. comment utiliser les fonctions d'une dll
    Par sebled dans le forum MFC
    Réponses: 3
    Dernier message: 24/02/2006, 16h59
  4. Comment connaître les fonctions d'une DLL ?
    Par bencot dans le forum API, COM et SDKs
    Réponses: 5
    Dernier message: 15/06/2005, 09h25

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