Назад | Перейти на главную страницу

Проблема с использованием psexec для удаленного GAC файла

В рамках процесса развертывания я пытаюсь передать GAC серию файлов. Фактический процесс сборки происходит на сервере сборки, и я пытаюсь использовать psexec для GAC файлов на любом компьютере, запросившем сборку.

Текущая строка, которую я пытаюсь выполнить:

C: \ PsTools> psexec.exe \ КОМПЬЮТЕР -u ПОЛЬЗОВАТЕЛЬ -p ПРОЙТИ gacutil.exe -i Assembly.dll -f

Ошибка, которую я получаю:

Ошибка при добавлении сборки в кеш: система не может найти указанный файл.

Таким образом, очевидно, что ссылка на dll находится на удаленном ящике, и, к сожалению, dll находится в ящике сборки. Есть ли способ как-то сделать это с помощью psexec, или мне нужно скопировать его во временное место на \\ КОМПЬЮТЕРЕ? Я знаю, что есть команды для копирования исполняемого файла как часть процесса psexec, но я не могу найти ничего похожего для вспомогательных файлов.

Я говорю, что вам нужно сначала скопировать этот файл на сервер, или, в качестве альтернативы, вы можете поделиться файлом с сервера сборки и указать его в своей команде psexec.

например

psexec.exe \ КОМПЬЮТЕР -u ПОЛЬЗОВАТЕЛЬ -p ПРОЙТИ gacutil.exe -i \ buildbox \ share \ Assembly.dll -f

единственное, что нужно помнить, это то, что удаленный процесс (запущенный на вашем целевом компьютере) работает в контексте системной учетной записи, и вам нужно будет согласовать это с вашими сетевыми ресурсами

надеюсь, это поможет