Quel chemin dois-je passer comme une AssemblyPath paramètre à la Publier.GacRemove fonction?
Question
Je veux utiliser le Publier.GacRemove fonction pour supprimer un assemblage à partir de GAC.Cependant, je ne comprends pas quel chemin je dois passer comme argument.
Devrait-il être un chemin d'accès à la DLL originale (si je l'ai enlevé après l'installation dans le GAC?) ou le chemin d'accès à l'assembly dans le GAC?
Mise à JOUR:
J'ai finalement utilisé ces API wrappers.
La solution
Je suis l'aide de la GacInstall
pour publier mon assemblées, cependant, une fois installé dans le gac, j'ai parfois supprimer mon "temporaire" copie des assemblées.
Et puis, si jamais je voulais désinstaller les assemblées du gac, je n'ai pas les fichiers sur le chemin d'origine.Cela pose un problème car je n'arrive pas à obtenir le GacRemove
méthode pour désinstaller les assemblées, à moins que je conserver les fichiers originaux.
Conclusion:Oui, vous devez spécifier le chemin d'accès à la DLL originale.(Et essayez de ne pas déplacer/supprimer par la suite).Si vous le supprimez, essayez de copier le fichier à partir du GAC à l'original de votre chemin et vous devriez être en mesure de le désinstaller à l'aide de GacRemove
.
Autres conseils
Je n'en suis pas sûr mais je crois GacRemove devrait faire la même chose que gacutil /u.Donc, il devrait être le chemin de votre fichier DLL.Cependant, il n'a pas à être le même fichier DLL.Copie de l'original devrait suffire puisque ce qui compte, c'est l'id unique de la DLL.