OVH Cloud OVH Cloud

Empêcher le chargement d'un assembly dans le GAC

4 réponses
Avatar
Gilles TOURREAU
Bonjour tout le monde !

J'ai des Assembly que j'ai développé qui sont installé dans le GAC de
mon poste de développement avec VS 2005...

Lorsque je debug les projets associé à ces assembly, Visual Studio me
dit qu'il n'arrive pas à trouver les PDB d'un assembly
(C:\Windows\...\GAC_MSIL\MyAssembly__xxxx...)...

Existe il un moyen pour que Visual Studio debug uniquement les assembly
présent dans la sortie du projet et non dans le GAC s'ils existent...

J'ai déjà essayé en modifiant la version des assembly ou la SN Key...
mais c'est ch**** à modifier et à remettre après pour tous les
assembly...

En vous remerciant par avance de vos lumières...

--
Gilles TOURREAU
Responsable Informatique
gilles.tourreau@pos.fr

Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr

4 réponses

Avatar
Simon Mourier [SoftFluent]
Vous pouvez copier manuellement les .PDB à coté de l'assembly qui va bien.
Vous ne pouvez pas le faire avec l'explorateur de Windows, mais soit par
programme ou avec la ligne de commande.
Le plus simple est de faire un .bat ou un .vbs pour automatiser la chose.

cf ici par exemple
http://www.cauldwell.net/patrick/blog/PuttingPDBFilesInTheGACWithMsh.aspx

Le plus simple reste à mon avis de ne pas déployer des assemblies en cours
de développement dans le GAC :-)
Simon.
www.softfluent.com


"Gilles TOURREAU" a écrit dans le message de news:

Bonjour tout le monde !

J'ai des Assembly que j'ai développé qui sont installé dans le GAC de mon
poste de développement avec VS 2005...

Lorsque je debug les projets associé à ces assembly, Visual Studio me dit
qu'il n'arrive pas à trouver les PDB d'un assembly
(C:Windows...GAC_MSILMyAssembly__xxxx...)...

Existe il un moyen pour que Visual Studio debug uniquement les assembly
présent dans la sortie du projet et non dans le GAC s'ils existent...

J'ai déjà essayé en modifiant la version des assembly ou la SN Key... mais
c'est ch**** à modifier et à remettre après pour tous les assembly...

En vous remerciant par avance de vos lumières...

--
Gilles TOURREAU
Responsable Informatique


Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr




Avatar
Gilles TOURREAU
Simon Mourier [SoftFluent] a écrit :
Vous pouvez copier manuellement les .PDB à coté de l'assembly qui va bien.
Vous ne pouvez pas le faire avec l'explorateur de Windows, mais soit par
programme ou avec la ligne de commande.
Le plus simple est de faire un .bat ou un .vbs pour automatiser la chose.

cf ici par exemple
http://www.cauldwell.net/patrick/blog/PuttingPDBFilesInTheGACWithMsh.aspx

Le plus simple reste à mon avis de ne pas déployer des assemblies en cours de
développement dans le GAC :-)
Simon.
www.softfluent.com


"Gilles TOURREAU" a écrit dans le message de news:

Bonjour tout le monde !

J'ai des Assembly que j'ai développé qui sont installé dans le GAC de mon
poste de développement avec VS 2005...

Lorsque je debug les projets associé à ces assembly, Visual Studio me dit
qu'il n'arrive pas à trouver les PDB d'un assembly
(C:Windows...GAC_MSILMyAssembly__xxxx...)...

Existe il un moyen pour que Visual Studio debug uniquement les assembly
présent dans la sortie du projet et non dans le GAC s'ils existent...

J'ai déjà essayé en modifiant la version des assembly ou la SN Key... mais
c'est ch**** à modifier et à remettre après pour tous les assembly...

En vous remerciant par avance de vos lumières...

-- Gilles TOURREAU
Responsable Informatique


Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr







Merci pour votre réponse, mais je suis obligé de déployer les assemblys
dans le GAC car ce projet est un plug-in qui s'intègre à Visual
Studio...

J'ai trouvé la solution en laissant la numérotation des versions
automatique des assembly (1.0.*)... C'est pas très élégant mais bon
tant pis !

Ainsi dans le GAC j'ai un programme qui tourne avec la version
1.0.1000.1000 et quand je débug VS lance un programme avec la version
1.0.1000.1010 par exemple et automatiquement il ne vas pas le chercher
dans le GAC.

--
Gilles TOURREAU
Responsable Informatique


Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr
Avatar
Simon Mourier [SoftFluent]
Avez vous regardé les possibilités de redirection du chargement des
assemblies? C'est assez puissant.

http://msdn2.microsoft.com/en-us/library/yx7xezcf(VS.80).aspx
http://msdn2.microsoft.com/en-us/library/eftw1fys(VS.80).aspx
http://msdn2.microsoft.com/en-us/library/15hyw9x3(VS.80).aspx

notamment <bindingRedirect> <probing> privatePath etc...

Simon.
www.softfluent.com


"Gilles TOURREAU" a écrit dans le message de news:

Simon Mourier [SoftFluent] a écrit :
Vous pouvez copier manuellement les .PDB à coté de l'assembly qui va
bien. Vous ne pouvez pas le faire avec l'explorateur de Windows, mais
soit par programme ou avec la ligne de commande.
Le plus simple est de faire un .bat ou un .vbs pour automatiser la chose.

cf ici par exemple
http://www.cauldwell.net/patrick/blog/PuttingPDBFilesInTheGACWithMsh.aspx

Le plus simple reste à mon avis de ne pas déployer des assemblies en
cours de développement dans le GAC :-)
Simon.
www.softfluent.com


"Gilles TOURREAU" a écrit dans le message de
news:
Bonjour tout le monde !

J'ai des Assembly que j'ai développé qui sont installé dans le GAC de
mon poste de développement avec VS 2005...

Lorsque je debug les projets associé à ces assembly, Visual Studio me
dit qu'il n'arrive pas à trouver les PDB d'un assembly
(C:Windows...GAC_MSILMyAssembly__xxxx...)...

Existe il un moyen pour que Visual Studio debug uniquement les assembly
présent dans la sortie du projet et non dans le GAC s'ils existent...

J'ai déjà essayé en modifiant la version des assembly ou la SN Key...
mais c'est ch**** à modifier et à remettre après pour tous les
assembly...

En vous remerciant par avance de vos lumières...

-- Gilles TOURREAU
Responsable Informatique


Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr







Merci pour votre réponse, mais je suis obligé de déployer les assemblys
dans le GAC car ce projet est un plug-in qui s'intègre à Visual Studio...

J'ai trouvé la solution en laissant la numérotation des versions
automatique des assembly (1.0.*)... C'est pas très élégant mais bon tant
pis !

Ainsi dans le GAC j'ai un programme qui tourne avec la version
1.0.1000.1000 et quand je débug VS lance un programme avec la version
1.0.1000.1010 par exemple et automatiquement il ne vas pas le chercher
dans le GAC.

--
Gilles TOURREAU
Responsable Informatique


Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr




Avatar
Gilles TOURREAU
Simon Mourier [SoftFluent] avait écrit le 25/01/2007 :
Avez vous regardé les possibilités de redirection du chargement des
assemblies? C'est assez puissant.

http://msdn2.microsoft.com/en-us/library/yx7xezcf(VS.80).aspx
http://msdn2.microsoft.com/en-us/library/eftw1fys(VS.80).aspx
http://msdn2.microsoft.com/en-us/library/15hyw9x3(VS.80).aspx

notamment <bindingRedirect> <probing> privatePath etc...

Simon.
www.softfluent.com


"Gilles TOURREAU" a écrit dans le message de news:

Simon Mourier [SoftFluent] a écrit :
Vous pouvez copier manuellement les .PDB à coté de l'assembly qui va bien.
Vous ne pouvez pas le faire avec l'explorateur de Windows, mais soit par
programme ou avec la ligne de commande.
Le plus simple est de faire un .bat ou un .vbs pour automatiser la chose.

cf ici par exemple
http://www.cauldwell.net/patrick/blog/PuttingPDBFilesInTheGACWithMsh.aspx

Le plus simple reste à mon avis de ne pas déployer des assemblies en cours
de développement dans le GAC :-)
Simon.
www.softfluent.com


"Gilles TOURREAU" a écrit dans le message de
news:
Bonjour tout le monde !

J'ai des Assembly que j'ai développé qui sont installé dans le GAC de mon
poste de développement avec VS 2005...

Lorsque je debug les projets associé à ces assembly, Visual Studio me dit
qu'il n'arrive pas à trouver les PDB d'un assembly
(C:Windows...GAC_MSILMyAssembly__xxxx...)...

Existe il un moyen pour que Visual Studio debug uniquement les assembly
présent dans la sortie du projet et non dans le GAC s'ils existent...

J'ai déjà essayé en modifiant la version des assembly ou la SN Key...
mais c'est ch**** à modifier et à remettre après pour tous les
assembly...

En vous remerciant par avance de vos lumières...

-- Gilles TOURREAU
Responsable Informatique


Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr







Merci pour votre réponse, mais je suis obligé de déployer les assemblys
dans le GAC car ce projet est un plug-in qui s'intègre à Visual Studio...

J'ai trouvé la solution en laissant la numérotation des versions
automatique des assembly (1.0.*)... C'est pas très élégant mais bon tant
pis !

Ainsi dans le GAC j'ai un programme qui tourne avec la version
1.0.1000.1000 et quand je débug VS lance un programme avec la version
1.0.1000.1010 par exemple et automatiquement il ne vas pas le chercher dans
le GAC.

-- Gilles TOURREAU
Responsable Informatique


Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr







Oui j'ai essayé et en plus d'après :

http://msdn2.microsoft.com/en-us/library/yx7xezcf(VS.80).aspx

.NET regarde dans le GAC à l'étape 3 et après regarde le fichier de
configuration de l'application à l'étape 4...

Dans mon cas ca ne fonctionne pas...

Cordialement

--
Gilles TOURREAU
Responsable Informatique


Société P.O.S
Spécialiste en motoculture depuis + de 30 ans !
http://www.pos.fr