bonjour j'aimerai lister tous les assembly qui se trouve dans la GAC .
Comment faire ?
Est ce que le repertoire est toujours le meme ou l'on peut modifier le chemin du repertoire de la GAC .
bonjour j'aimerai lister tous les assembly qui se trouve dans la GAC .
Comment faire ?
Est ce que le repertoire est toujours le meme ou l'on peut modifier le chemin du repertoire de la GAC .
tu peux voir ce qu'il y a dans le GAC avec gacutil /lEnvoyé par chnew
Tu ne peux pas modifier le repertoire me semble t il ...
@+
Je suppose que le Registre est la clé de tout çà mais le comment proceder, je n'ai jamais fait, je sais qu'il existe un outil VS pour manipuler la GAC >>
http://msdn.microsoft.com/library/fre/default.asp?url=/library/FRE/cptutorials/html/global_assembly_cache_utility__gacutil_exe_.asp
gacutil est un outil de Visual Studio, donc pas présent uniquement sur les postes de développement.
On peut aussi utiliser le programme "Configuration Microsoft .NET" qui se trouve dans la rubrique administration du panneau de configuration.
tu peux aussi voir le gac avec l'explorateur windows ...Envoyé par FredP42
@+
Salut .
juste une question : tu veux avoir le contenu du gac grace à du code ?
Sinon tu ne peux pas a ma connaissance changer le répertoire du gac . celui ci est situé dans C:\Windows\Assembly au niveau physique.
le probleme c'est qu il n'y a rien dans cette emplacement physique ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part foreach (string name in Directory.GetFiles(@"C:\WINDOWS\assembly"))
editer par neguib pour![]()
j'aurais plutôt parié pourEnvoyé par chnew
@"C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705\" par exemple pour une version 1.0
Ah non monsieur neguib. le gac est bien situé dans le répertoire windows (du moins si on y accède par l'explorateur windows ) .Envoyé par neguib
Sinon pour lister les aseembly dans le gac ben la pas d'idées ...[/code]
En fait il y a un répertoire GAC dans C:\Windows\assembly qui contient un répertoire pour chaque assembly.Envoyé par chnew
Mais je pense pas que se soit la bonne méthode (déjà le répertoire Windows ne s'appele pas toujours Windows). Par contre j'ai rien trouvé dans la doc pour lister le GAC
:
c'est le répertoire v1.0.0.3705Envoyé par neguib
![]()
nan ce que je voulais dire c'est que la réprésentation "utilisateur" est dispo à partir du répertoire c:\WINDOWS\assembly. Après ou son stocké en dur les assembly, je m'en moque on parle du GAC . Or le répertoire du GAC est bien celui sité au dessus. Le répertoire dont tu parles n'est qu'une sauvegarde je crois .
Les assemblies sont bien stockées dans C:\WINDOWS\assembly mais dans des sous-répertoires. Vous pouvez le vérifier en utilisant un autre gestionnaire de fichier que l'Explorateur de Windows ou même en mode console.
Il existe une API (non documentée dans la MSDN) pour intéragir avec le GAC et entre autre lister les assemblies:
http://support.microsoft.com/default.aspx?scid=kb;en-us;317540
Envoyé par dsy
interéssant (on pouvait toujours chercher dans la doc).
Je me disais bien que les outils d'administration devaient utiliser une API.
C'est peut-être à mettre dans une FAQ ?
Cette discussion est terminée depuis longtemps, mais au cas ou quelqu'un (comme moi) retomberait dessus, la solution est la suivante :
il faut aller dans l'éditeur de base de registre,
aller jusqu'a la clé HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion
Ensuite ajouter une valeur binaire appelé DisableCacheViewer a laquelle on affectera la valeur 1 (en hexa)
après avoir valider on pourra aller dans le gac et voir ou sont exactement les fichiers.
Par contre, comme dit précédemment, je ne suis pas sur que ce soit la meilleure solution pour lister les fichiers du gac
Et sinon, on peut aussi lister les dossiers dans le repertoire :
C:\WINDOWS\assembly\GAC_MSIL
Les repertoires correspondent au nom des assembly
Partager