Какой путь я должен передать в качестве параметра AssemblyPath в функцию Publish.GacRemove? - PullRequest
1 голос
/ 05 сентября 2008

Я хочу использовать функцию Publish.GacRemove для удаления сборки из GAC. Однако я не понимаю, по какому пути я должен идти в качестве аргумента.

Должен ли это быть путь к исходной DLL (что, если я удалил ее после установки в GAC?) Или путь к сборке в GAC?

UPDATE:

Наконец-то я использовал эти API-оболочки .

Ответы [ 2 ]

2 голосов
/ 05 сентября 2008

Я использую GacInstall для публикации своих сборок, однако, будучи установленным в gac, я иногда удаляю свою «временную» копию сборок.

И потом, если я когда-нибудь захочу удалить сборки из gac, у меня нет файлов по первоначальному пути. Это вызывает проблему, поскольку я не могу заставить метод GacRemove удалить сборки, если не сохраню исходные файлы.

Вывод: да, вам нужно указать путь к исходной DLL. (И постарайтесь не перемещать / удалять его позже). Если вы удалите его, попробуйте скопировать файл из GAC в исходный путь, и вы сможете удалить его, используя GacRemove.

1 голос
/ 05 сентября 2008

Я не совсем уверен в этом, но я считаю, что GacRemove должен делать то же самое, что и gacutil / u. Итак, это должен быть путь к вашей DLL. Однако это не обязательно должен быть тот же файл DLL. Копия оригинала должна быть достаточной, поскольку учитывается уникальный идентификатор DLL.

...