Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VB.net et les assembly

4 réponses
Avatar
Stephane Matteo
Bonjour a tous,

Je suis debutant en vb.net et j'aimerai savoir a quoi sert exactement
d'ajouter une DLL dans le repertoire assembly ?
Car lorsque l'on veux ajouter une reference a la DLL qui est dans
l'assembly, on va pas la chercher dans le repertoire assembly.
Il y a un truc que j'ai pas saisi Du tout.
Merci a tous et bonne soirée.

4 réponses

Avatar
Patrick Philippot
Stephane Matteo wrote:
Je suis debutant en vb.net et j'aimerai savoir a quoi sert exactement
d'ajouter une DLL dans le repertoire assembly ?
Car lorsque l'on veux ajouter une reference a la DLL qui est dans
l'assembly, on va pas la chercher dans le repertoire assembly.
Il y a un truc que j'ai pas saisi Du tout.



Bonjour,

Il y a 2 types d'assemblages: les assemblages privés et les assemblages
partagés. Les premiers, comme leur nom l'indique, sont privés à une
application et n'ont pas vocation à être partagés avec d'autres
applications. Il sont donc stockés dans le répertoire de l'application
ou un de ses sous-répertoires.

Les assemblages dont le partage présente un intérêt (composants
génériques servant à plusieurs applications, composants du
commerce,...), sont installés dans le GAC (Global Assembly Cache), ce
que vous appelez le répertoire Assembly, je pense (c:windowsassembly =
GAC). Quand .Net recherche un assemblage référencé par un autre
assemblage, il va aller le chercher dans le GAC s'il ne le trouve pas
localement.

Quand vous créez une référence à un assemblage dans Visual Studio, les
assemblages présentés dans la liste de l'onglet .Net sont bien les
assemblages partagés stockés dans le GAC. Pour référencer un assemblage
privé, vous utilisez le bouton Browse... en haut à droite et recherchez
la DLL qui vous intéresse.

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr
Avatar
Stephane Matteo
Ok merci Patrick pour ces precisions.

"Patrick Philippot" a écrit dans le
message de news:
Stephane Matteo wrote:
> Je suis debutant en vb.net et j'aimerai savoir a quoi sert exactement
> d'ajouter une DLL dans le repertoire assembly ?
> Car lorsque l'on veux ajouter une reference a la DLL qui est dans
> l'assembly, on va pas la chercher dans le repertoire assembly.
> Il y a un truc que j'ai pas saisi Du tout.

Bonjour,

Il y a 2 types d'assemblages: les assemblages privés et les assemblages
partagés. Les premiers, comme leur nom l'indique, sont privés à une
application et n'ont pas vocation à être partagés avec d'autres
applications. Il sont donc stockés dans le répertoire de l'application
ou un de ses sous-répertoires.

Les assemblages dont le partage présente un intérêt (composants
génériques servant à plusieurs applications, composants du
commerce,...), sont installés dans le GAC (Global Assembly Cache), ce
que vous appelez le répertoire Assembly, je pense (c:windowsassembly > GAC). Quand .Net recherche un assemblage référencé par un autre
assemblage, il va aller le chercher dans le GAC s'il ne le trouve pas
localement.

Quand vous créez une référence à un assemblage dans Visual Studio, les
assemblages présentés dans la liste de l'onglet .Net sont bien les
assemblages partagés stockés dans le GAC. Pour référencer un assemblage
privé, vous utilisez le bouton Browse... en haut à droite et recherchez
la DLL qui vous intéresse.

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr




Avatar
Stephane Matteo
Mais il y a un truc qui ne marche pas. Je suis dans le cas d'un assemblage
partagé.
Donc ma DLL est referencé dans le GAC. Lorsque je crée un nouveau projet
j'ajoute la reference a ma DLL que je vais chercher
dans le repertoire ou j'ai créer ma DLL (et pas dans le GAC). J'execute mon
Programme compilé et ça marche.
Mais ce que je veux c'est que mon programme aille chercher ma DLL dans le
GAC et cela il ne le fait pas.
Car si j'execute mon fichier executable et si je supprime la DLL qui a été
copier dans le repertoire ou il il y a mon programme et bien il me retourne
une erreur.
Preuve qu'il ne va pas chercher ma DLL dans le GAC.
Quelqu'un a une idée ?




"Patrick Philippot" a écrit dans le
message de news:
Stephane Matteo wrote:
> Je suis debutant en vb.net et j'aimerai savoir a quoi sert exactement
> d'ajouter une DLL dans le repertoire assembly ?
> Car lorsque l'on veux ajouter une reference a la DLL qui est dans
> l'assembly, on va pas la chercher dans le repertoire assembly.
> Il y a un truc que j'ai pas saisi Du tout.

Bonjour,

Il y a 2 types d'assemblages: les assemblages privés et les assemblages
partagés. Les premiers, comme leur nom l'indique, sont privés à une
application et n'ont pas vocation à être partagés avec d'autres
applications. Il sont donc stockés dans le répertoire de l'application
ou un de ses sous-répertoires.

Les assemblages dont le partage présente un intérêt (composants
génériques servant à plusieurs applications, composants du
commerce,...), sont installés dans le GAC (Global Assembly Cache), ce
que vous appelez le répertoire Assembly, je pense (c:windowsassembly > GAC). Quand .Net recherche un assemblage référencé par un autre
assemblage, il va aller le chercher dans le GAC s'il ne le trouve pas
localement.

Quand vous créez une référence à un assemblage dans Visual Studio, les
assemblages présentés dans la liste de l'onglet .Net sont bien les
assemblages partagés stockés dans le GAC. Pour référencer un assemblage
privé, vous utilisez le bouton Browse... en haut à droite et recherchez
la DLL qui vous intéresse.

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr




Avatar
Stephane Matteo
Desolé mais je viens de voir mon erreur, il y avais un probleme de version
de ma DLL.


"Patrick Philippot" a écrit dans le
message de news:
Stephane Matteo wrote:
> Je suis debutant en vb.net et j'aimerai savoir a quoi sert exactement
> d'ajouter une DLL dans le repertoire assembly ?
> Car lorsque l'on veux ajouter une reference a la DLL qui est dans
> l'assembly, on va pas la chercher dans le repertoire assembly.
> Il y a un truc que j'ai pas saisi Du tout.

Bonjour,

Il y a 2 types d'assemblages: les assemblages privés et les assemblages
partagés. Les premiers, comme leur nom l'indique, sont privés à une
application et n'ont pas vocation à être partagés avec d'autres
applications. Il sont donc stockés dans le répertoire de l'application
ou un de ses sous-répertoires.

Les assemblages dont le partage présente un intérêt (composants
génériques servant à plusieurs applications, composants du
commerce,...), sont installés dans le GAC (Global Assembly Cache), ce
que vous appelez le répertoire Assembly, je pense (c:windowsassembly > GAC). Quand .Net recherche un assemblage référencé par un autre
assemblage, il va aller le chercher dans le GAC s'il ne le trouve pas
localement.

Quand vous créez une référence à un assemblage dans Visual Studio, les
assemblages présentés dans la liste de l'onglet .Net sont bien les
assemblages partagés stockés dans le GAC. Pour référencer un assemblage
privé, vous utilisez le bouton Browse... en haut à droite et recherchez
la DLL qui vous intéresse.

--
Patrick Philippot - Microsoft MVP
MainSoft Consulting Services
www.mainsoft.fr