Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Problème avec les références vers les Dlls de composants [ Archives / Au secours ] (cfz)

lundi 30 janvier 2006 à 14:42:29 | Problème avec les références vers les Dlls de composants

cfz

Bonjour,
il y a quelque chose que j'ai du mal a comprendre avec les références de Dlls et Visual Studio.
Je vous explique ci-dessous mon problème (j'ai déjà eu le problème une fois la semaine dernière et j'ai réussi a le contourner... je ne sais plus trop comment :-/).
(Rq.: soyez indulgent SVP, ça ne fait qu'une semaine que j'ai installer Visual Studio 2005)

Description du contexte :
Mon projet est découpé en plusieurs Dlls stoquées pour une partie dans l'espace de nommage "CFZ.Composants" et pour le reste dans "CFZ.Composants.GestPlanning".
Mon application est stockée quant à elle dans "CFZ.Applications.GestPlanning".
Pour info, les répertoires de ces différents éléments respectent l'espace de nommage défini (F:\Work\Développement\CFZ\Composants\ , etc...).
L'un de mes derniers composants CFZ.Composants.GestPlanning.Fiches.Dll fait référence à trois autres de mes composants (CFZ.Composants.TitratedFrame, CFZ.Composants.Localization, CFZ.Composants.GestPlanning.Langues).
Jusque là, aucun problème.
Mise en place du problème :
J'ajoute maintenant un nouveau projet : PrjGen que je met dans CFZ.Composants.GestPlanning et dont l'assembly se nomme CFZ.Composants.GestPlanning.PrjGen.Dll. Après avoir mit 2-3 éléments publics je compile (Build et Rebuild pour être sûr... je ne connais pas trop la différence entre les deux) ce nouveau composant.
Puis dans mon dernier composant (CFZ.Composants.GestPlanning.Fiches.Dll), j'ajoute la référence vers cette Dll (qui se trouve alors dans le répertoire F:\Work\Développement\CFZ\Composants\GestPlanning\PrjGen\obj\Release\) puis j'utilise les 2-3 éléments publics définis précédemment. Ils sont bien reconnu.
Problème :

Je compile et tout se passe bien, j'exécute et là c'est le drame : à l'appel de la fonction utilisant les 2-3 éléments publics cités plus haut il m'envoi une exception :

Could not load file or assembly 'CFZ.Composants.GestPlanning.PrjGen, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. Le fichier spécifié est introuvable.

Or ma Dll CFZ.Composants.GestPlanning.PrjGen.Dll est bien présente (d'ailleur elle est présente dans 4 répertoires distincts : obj\release , obj\debug , bin\release et bin\debug).

J'ai essayé tout ce qui me passait par la tête, avec ou sans le projet PrjGen dans la solution Visual Studio...
Je n'y comprend rien!!! merci d'avance.

lundi 30 janvier 2006 à 15:03:37 | Re : Problème avec les références vers les Dlls de composants

Lutinore

Administrateur CodeS-SourceS
Salut, j'ai du mal à visualiser ton projet..

Tu execute le projet, mais quel est le fichier EXE, tu ne parles que de DLL !?

EXE et DLL doivent ( il me semble ) se trouver dans le même répertoire ou les DLL dans la GAC.

lundi 30 janvier 2006 à 15:42:33 | Re : Problème avec les références vers les Dlls de composants

cfz

J'ai finalement réussi à résoudre mon problème... mais je ne comprend toujours pas la logique utilisé par Visual Studio... voir la suite...

Mon application (mon EXE donc) se trouve stockée dans CFZ.Applications.GestPlanning. Le composant Fiches se trouvent quant à lui, comme c'est le cas des autres composants, dans CFZ.Composants.GestPlanning.. et par conséquant dans un autre répertoire. Mais le problème ne vient pas de là... ça marche très bien avec les autres composants.
NB.: chaque dossier de l'espace de nommage représente un dossier dans l'architecture windows dont la base est F:\Work\Développement\ (exemple : CFZ.Composants.GestPlanning.Fiches.Dll se trouve dans le répertoire F:\Work\Développement\CFZ\Composants\GestPlanning\Fiches\)

L'architecture complète de mon projet est la suivante :
CFZ.Applications.GestPlanning (où se trouve l'exe) utilise : 
      CFZ.Composants.GestPlanning.Constantes
      CFZ.Composants.GestPlanning.Fiches
      CFZ.Composants.GestPlanning.Langues
      ...
CFZ.Composants.GestPlanning.Fiches utilise : 
      CFZ.Composants.GestPlanning.Langues
      CFZ.Composants.GestPlanning.PrjGen

Tout marche bien mais à l'exécution il m'envoi l'exception d'absence du fichier.
Par contre tout marche bien si j'ajoute également la référence de CFZ.Composants.GestPlanning.PrjGen dans l'exe. C'est bizzare... pourquoi suis-je obligé de la mettre dans l'exe, PrjGen n'est pas utilisé directement par l'exe!!! Il est juste utilisé dans une fonction privée de Fiches.

Même si mon problème est résolu, si quelqu'un peut m'expliquer... j'écouterais avec grand intérêt.
++



Cette discussion est classé dans : problème, dll, composants, gestplanning, prjgen


Répondre à ce message

Sujets en rapport avec ce message

problème avec dll [ par pipicaca ] Bonjour!Voila je dois faire une application en C# utilisant des dll écrites en C. Les fonctions de ces dll ont en paramètres d'entrée/sortie des struc ?Gros problème avec dll [ par pipicaca ] Bonsoir,Voila je dois utiliser une dll écrite en C dans un programme écrit en C#. COmment faire??? Les fonctions contenues dans la dll et que je dois Problème d'unload de plugin [ par revlis ] Bonjour a tous, J'ai fait une petite application composée de modules (plugin)Chaque dll presente dans un sous-repertoire représente un "module". celui problème ddl FDFACXLib [ par Gueubaille ] Bonjour,J'ai télécharger la source présente ici : http://www.csharpfr.com/code.aspx?ID=30716Mais j'ai un souci, quand je veux référencer la dll j'ai u Problème appel DLL, effet de bord [ par kox007 ] Bonjour, Je travail sur un projet codé en C#. Celui ci fait appel à une fonction d'une DLL en C++. En entête du fichier j'éffectue bien la commande su Problème instanciation webservice [ par pma3d ] Bonjour, Je développe actuellement un service web en C# utilisant des DLL en C++ managé. Jusque là, pour les différents tests effectués, j'utilisais LoaderLock a été détecté [ par djacc ] J’ai un problème j’ai modifier le code d'un projet de moteur de rendu avec directx en créent un dll  ainsi que  un exe qui le charge! <span style="fo Problème au déploiement d'un site avec une DLL [ par tanginthemiddle ] Bonjour,J'ai fait une petit DLL de test en VB6. Celle-ci renvoie simplement une chaîne de caractère.Mon site ASP.net  fais juste un appel à cette DLL [C#] problème d'inclusion d'une dll [ par Yakurena ] Bonjour, J'aimerais savoir s'il est possible, lors du déploiement sur le PDA émulé par Visual Studio, d'ajouter une dll pour qu'il reconnaisse l'objet Problème de référence entre C# et Word [ par plop3000 ] Bonjour, J'ai fait une DLL en C# et lorsque j'essaie de l'appeler en vba sous Word 2003 j'obtiens toujours l'erreur suivante : Erreur -2147024894


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,546 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.