Problème importation de DLL [Résolu]

Signaler
Messages postés
16
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
15 avril 2012
-
Messages postés
16
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
15 avril 2012
-
Bonjour,

J'aimerais importer une DLL mais lorsque je l'importe ils me disent ce message :

"Une référence à '...' n'a pas pu être ajoutée. Vérifiez que ce fichier est accessible et qu'il s'agit d'un assembly ou d'un composant COM valide."

Ce que j'aimerais savoir c'est pourquoi il y a ce message, y'a t-il moyen de le régler pour importer la dll tranquillement ?

Merci :)

9 réponses

Messages postés
14725
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 septembre 2020
144
Bonjour,

Je parlais de ce DLLImport :
http://msdn.microsoft.com/en-us/library/system.runtime.interopservices.dllimportattribute.aspx

Le message est clair, donc, je ne pense pas que passer en C++ résolvera ton problème.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Messages postés
14725
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 septembre 2020
144
Bonjour,

Une DLL COM/ActiveX/.NET comporte des classes.
Une DLL Windows a des fonctions.
Pour connaitre le nom des fonctions, il faut soit avoir la doc ou utiliser un outils (DependencyWalker ou un truc du genre).

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Messages postés
14725
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 septembre 2020
144
Bonjour,

De quel type de DLL s'agit-il ?
Si c'est du COM/ActiveX/.NET, il faut ajouter la référence.
API Windows, il faut utiliser DLLImport.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Messages postés
16
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
15 avril 2012

C'est du .NET (C#)

Mais c'est justement à l'ajout de la référence que j'ai ce message...

(Ou alors j'ai pas compris ce que tu voulais dire :x)
Messages postés
14725
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
22 septembre 2020
144
Bonjour,

D'après le message, la DLL ne peut pas être enregistrée, d'où ma question.
As-tu tenté un DLLImport ?
En quel langage a été faite ou quel est le nom de la DLL ?

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, celui-ci pour bien poser votre question ou encore celui-ci pour les PFE et autres exercices[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]En VB.NET pensez à activer Option Explicit et Option Strict (propriété du projet) et à retirer l'import automatique de l'espace de nom Microsoft.VisualVasic (onglet Références dans les propriétés du projet).
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
Messages postés
16
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
15 avril 2012

Je veux bien tester le DllImport mais comment on l'utilise ? Je viens de googler ça, mais je trouve rien...

En fait après quelques recherches, j'ai pu voir que la DLL a été faite en C++ :/
Messages postés
16
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
15 avril 2012

Mais sinon au pire,

Comment on importe une DLL dans Visual C++ ?
Ca à l'air beaucoup plus long que Visual C# et sur google y'a quasiment rien de "direct", je trouve que des postes où les gens ont importer leur dll mais ça marche pas ou je sais pas quoi...
Messages postés
16
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
15 avril 2012

Ah ok en fait je m'étais trompé pour le DllImport je savais l'utiliser, juste que je m'étais trompé d'emplacement x)

Donc y'a vraiment aucun moyen de l'importer comme les autres .dll ? :(
Et sinon les noms des fonctions qui s'y trouve il faut les deviner ?
Messages postés
16
Date d'inscription
lundi 9 octobre 2006
Statut
Membre
Dernière intervention
15 avril 2012

Ok merci beaucoup.