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 :

Utilisation des DLL avec c#.


Sujet :

C#

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    172
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 172
    Points : 68
    Points
    68
    Par défaut Utilisation des DLL avec c#.
    Bonjour,

    Pouvez-vous m'expliquez comment fonctionne les DLL, et particulièrement avec c#, je n'en ai jamais utilisées dans mes programmes et je ne trouve pas de tuto qui en décrit précisément le fonctionnement.

    D'après ce que j'ai compris une DLL s'apparente a un fichier .h en c, c'est à dire un fichier qu'on inclu dans le programme lui permettant d'utiliser les fonctions définies dans ce fichier, mais jusqu'à quel point cette comparaison est-elle juste ?

    Merci.

  2. #2
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 194
    Points
    5 194
    Par défaut
    Salut

    Pas du TOUT...

    Une dll, c'est une librairie ie une collection de fonctions que tu peux appeler depuis un programme.

    La DLL (Dynamic Link Library) est chargée au démarrage de ton programme ou bien peut-etre chargée dynamiquement via des fonctions de chargement de librairie.

    Une DLL contient uniquement du code exécutable.

    Cela n'a donc rien à voir avec un .h ou .c.

    Pour appeler une fonction contenue dans une DLL en C#, il faut connaitre le prototype de la fonction et passer par un mécanisme nommé INTEROP.


    Pour voir le prototype des fonctions, un outil comme "dependency Walker"
    peut s'avérer utile (à moins que le prototype des fonctions de ta DLL te soit fourni)

    Après, dans la mesure ou il y a beaucoup de posts traitant ce sujet sur le forum, je t'invite à faire un peu de recherche pour collecter des informations et éviter de reposer une question déja traitée !!!

  3. #3
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2011
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2011
    Messages : 456
    Points : 386
    Points
    386
    Par défaut
    Pour utiliser un DLL , il faut etre d'extension ".DLL",
    pour l'utiliser il faut faire ajouter, par right click sur le nom du projet,Add Reference, browse , le nom du ton DLL ,
    apres dans to application .cs (C#) tu fait using <namespace> du nom du DLL.

  4. #4
    Expert confirmé

    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Septembre 2006
    Messages
    3 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 580
    Points : 5 194
    Points
    5 194
    Par défaut
    sauf que si ta dll n'est pas une assembly .Net ou n'est pas un objet, COM, ca risque de coincer un peu ta technique...

  5. #5
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2011
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2011
    Messages : 456
    Points : 386
    Points
    386
    Par défaut
    Oui c'est juste s'il est DLL .Net ou COM il ya une Liste avant le browse, on peut le prendre du elle, comme DLL du Microsoft Word ,.......

  6. #6
    Membre averti
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Janvier 2011
    Messages
    456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Chef de projet MOA
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2011
    Messages : 456
    Points : 386
    Points
    386
    Par défaut
    Salut j'ai un petite question , lorsque je veux ecrire dans une page dans microsoft word du C# code , il faut mettre ces using dans la liste du page ,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    using Microsoft.Office.Interop.Word;
    using Word=Microsoft.Office.Interop.Word;
    mon question pourquoi il faut mettre les 2 ? si l'un n'est pas ajouter on ne peut pas faire un acces au word ! pourquoi !
    merci

Discussions similaires

  1. Utiliser des DLL avec NetBeans
    Par JeanNoel53 dans le forum NetBeans
    Réponses: 1
    Dernier message: 27/12/2010, 15h28
  2. Réponses: 1
    Dernier message: 06/03/2009, 10h02
  3. Utilisation des Dll avec MATLAB 2007b
    Par halimi dans le forum MATLAB
    Réponses: 7
    Dernier message: 21/01/2009, 15h29
  4. [FORMS] Utilisation de DLL avec ORA_FFI
    Par Nounoursonne dans le forum Forms
    Réponses: 2
    Dernier message: 07/12/2004, 09h19
  5. utilisation de dll avec diverses compilateurs
    Par Thylia dans le forum C++
    Réponses: 30
    Dernier message: 21/10/2004, 16h30

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