Problème importation de DLL

Résolu
VisionElf Messages postés 16 Date d'inscription lundi 9 octobre 2006 Statut Membre Dernière intervention 15 avril 2012 - 15 avril 2012 à 14:15
VisionElf Messages postés 16 Date d'inscription lundi 9 octobre 2006 Statut Membre Dernière intervention 15 avril 2012 - 15 avril 2012 à 15:28
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

NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
15 avril 2012 à 14:57
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
3
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
15 avril 2012 à 15:15
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
3
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
15 avril 2012 à 14:30
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
0
VisionElf Messages postés 16 Date d'inscription lundi 9 octobre 2006 Statut Membre Dernière intervention 15 avril 2012
15 avril 2012 à 14:36
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)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
NHenry Messages postés 15112 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 13 avril 2024 159
15 avril 2012 à 14:45
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
0
VisionElf Messages postés 16 Date d'inscription lundi 9 octobre 2006 Statut Membre Dernière intervention 15 avril 2012
15 avril 2012 à 14:49
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++ :/
0
VisionElf Messages postés 16 Date d'inscription lundi 9 octobre 2006 Statut Membre Dernière intervention 15 avril 2012
15 avril 2012 à 14:54
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...
0
VisionElf Messages postés 16 Date d'inscription lundi 9 octobre 2006 Statut Membre Dernière intervention 15 avril 2012
15 avril 2012 à 15:05
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 ?
0
VisionElf Messages postés 16 Date d'inscription lundi 9 octobre 2006 Statut Membre Dernière intervention 15 avril 2012
15 avril 2012 à 15:28
Ok merci beaucoup.
0
Rejoignez-nous