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

VC++ .NET Discussion :

Modifier le r�pertoire o� trouver les dlls


Sujet :

VC++ .NET

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre tr�s actif
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    427
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 427
    Par d�faut Modifier le r�pertoire o� trouver les dlls
    Bonjour,

    ma dll en visual C++ appelle une dll en C#, pour que �a fonctionne il faut que ma dll soit plac� dans le m�me r�pertoire que mon exe, est-il possible d'ajouter un autre r�pertoire o� rechercher les dlls ?
    La dll se trouve dans un sous-r�pertoire.

    Merci.

  2. #2
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 503
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 503

  3. #3
    Membre tr�s actif
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    427
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 427
    Par d�faut
    je ne vois pas en quoi c'est du bricolage, �a permet d'avoir un projet correctement structur�.
    Ce lien ne me dit pas comment modifier le manifest ?

    J'ai trouv� ce lien AddDllDirectory function mais �a ne fonctionne pas.

  4. #4
    Expert confirm�
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    F�vrier 2005
    Messages
    5 503
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 53
    Localisation : France, Val de Marne (�le de France)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : F�vrier 2005
    Messages : 5 503
    Par d�faut
    je ne vois pas en quoi c'est du bricolage, �a permet d'avoir un projet correctement structur�.
    Un assembly .NET (C#), comme un composant COM, n'est pas une Dll au sens syst�me, m�me si les fichiers g�n�r�es ont des extensions en .dll.

    pour que �a fonctionne il faut que ma dll soit plac� dans le m�me r�pertoire que mon exe,
    Si �a c'est pas du bricolage, �a y ressemble furieusement. Il est tr�s probable que le r�pertoire d'un EXE soit extr�mement contraint en terme de s�curit� et que des Dll, type plug-ins par exemple, doivent �tre stock�es ailleurs pour �viter ces probl�mes de s�curit�.
    Et rien ne garantit que les r�glages syst�me qui permettent � ce bricolage de fonctionner sur votre machine de d�veloppement soient les m�mes sur toutes les machines de vos clients potentiels.

    est-il possible d'ajouter un autre r�pertoire o� rechercher les dlls ?
    C'est pas une Dll, vous ne connaissez pas les r�glages qui d�fonceront vos assertions, etc...

    En utilisant un manifeste vous pouvez rendre votre structure de fichiers op�rationnelle sur l'ensemble des plateformes clientes potentielles.

    Ce lien ne me dit pas comment modifier le manifest ?
    Un manifest, c'est juste un fichier XML dont �ditable avec n'importe quel �diteur de texte.

    J'ai trouv� ce lien AddDllDirectory function mais �a ne fonctionne pas.
    Avez-vous au moins lu la documentation, et en particulier les "Remarks", mais bon, c'est pour des Dll "syst�me", pas pour des assemblies.

  5. #5
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    AddDllDirectory() peut �tre n�cessaire quand un assembly .Net r�f�rence des DLLs non-manag�es (et s'il les r�f�rence directement, genre les d�pendances d'un assembly en C++/CLI, plut�t que via P/Invoke, alors on ne peut pas charger l'assembly sans les DLLs).

    Mais dans le cas des assemblys .Net, ils doivent:
    • soit �tre tous situ�s dans le m�me r�pertoire,
    • soit s'ils sont ailleurs, il faut:
      • soit les charger via leur chemin (Assembly.LoadFrom()) ce qui a des cons�quences pour le contexte de s�curit� (c'est ce que je fait pour mes plug-ins).
      • soit faire la r�solution soi-m�me si on veut les charger dans le m�me contexte de s�curit�.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Membre tr�s actif
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    427
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 427
    Par d�faut
    Merci @M�dinoc "Assembly.LoadFrom()" fonctionne.

    une autre question :
    existe-il une fonction pour d�charger cette dll quand on en a plus besoin ?

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 19
    Dernier message: 11/05/2017, 20h28
  2. Dans quel r�pertoire il faut placer les .dll
    Par BasicZX81 dans le forum VB.NET
    R�ponses: 2
    Dernier message: 31/08/2012, 18h14
  3. Trouver dans quel r�pertoire se trouve la DLL
    Par colorid dans le forum Langage
    R�ponses: 3
    Dernier message: 18/03/2009, 17h17
  4. R�ponses: 1
    Dernier message: 12/01/2008, 09h07
  5. [Pocket PC/dll] Où se trouve les DLL ?
    Par Tueur_a_gage dans le forum Windows Mobile
    R�ponses: 3
    Dernier message: 30/08/2006, 22h28

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