Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Аватара для Avatar-Lion

Support L1+


Contributor


Сообщения: 5114
Благодарности: 1020

Профиль | Отправить PM | Цитировать


Несколько часов изучал этот вопрос, но как-то оно криво все получается... Office 2016 не умеет менять список установленных компонентов из командной строки. По крайне мере, мне не удалось найти каких-то реально рабочих рецептов на этот счет. Единственное чего удалось добиться - это удаленно снести Office с виртуальной машины и поставить его повторно туда же, но уже с нужным списком компонентов. Хотя даже это не очень просто делается, кучу костылей приходится использовать.

1) https://habr.com/ru/articles/676064/ - отправная точка, там рассказано про PsExec64, которая позволяет запускать файлы на удаленном ПК. Но есть ограничения. Например, PsExec64 не умеет запускать файлы с общих папок и не всегда корректно поддерживает аргументы командной строки. Я папку с дистрибутивом Офиса вручную перенес в виртуальную машину, но, вероятно, копирование и удаление папки можно автоматизировать через .bat-файлы, однако этот вопрос я уже не стал копать.

2) На реальном ПК я выполнил следующую команду:
Код: Выделить весь код
PsExec64.exe -i \\VIRTUAL-PC -u "Virtual User" "C:\\Microsoft Office 2016 (32-bit)\setup.exe"
На всякий случай подчеркну, что диск С в ней означает диск именно на виртуальной машине. Как уже говорилось выше, я скопировал дистрибутив Офиса в виртуалку. Возможно, сработает и установка через сеть, если подключить расшаренную папку как сетевой диск, но там тоже есть подводные камни, см. тут подробнее (опять-таки, я этот вариант не проверял, но выглядит вполне рабочим).

3) Конфигурация Офиса. Office 2016 сделан таким образом, что при запуске setup.exe обрабатываются все файлы в подкаталоге "updates" во время установки. В этом каталоге обычно лежат обновления для офиса и конфигурационный файл (любое_имя.msp), в котором хранится список устанавливаемых компонентов. Чтобы заиметь .msp-файл со сценарием установки, нужно сначала на любом компе запустить setup.exe /admin - Офис запустится в режиме конфигуратора и можно будет задать список устанавливаемых компонентов.

4) Удаление Офиса сделано через одно место. Если просто запустить setup.exe /uninstall, то он пошлет нас куда подальше. Для корректного удаления Офиса из командной строки надо указать удаляемую редакцию и .xml-файл, в котором содержатся сведения об установленном продукте. Примерно так:
Код: Выделить весь код
<Configuration Product="Standard">

<Display Level="none"

CompletionNotice="no"

SuppressModal="yes"

AcceptEula="yes" />

</Configuration>
Если редакция не Стандартная, а Профессиональная Плюс, то заменяем Standard на ProPlus (вроде так правильно сокращается). Сохраняем это всё через Блокнот под именем типа config.xml, кладем его рядом с setup.exe и выполняем у себя на компе команду:
Код: Выделить весь код
PsExec64.exe -i \\VIRTUAL-PC -u "Virtual User" "C:\Microsoft Office 2016 (32-bit)\setup.exe" /Uninstall Standard /Config config.xml"
Это удалит Office 2016 (Стандартный) с удаленного ПК. Соответственно, сначала запускаем Uninstall для удаления, а затем просто setup.exe (как в пункте №2) для установки с нуля с нужным списком компонентов.

P.S. Если будет писать про отказ в доступе, то надо добавить в реестр LocalAccountTokenFilterPolicy на удаленном ПК (подробнее см. тут).

P.P.S. У меня PsExec64 выдавал все ошибки в неправильной кодировке, приходилось вручную копировать кракозябры и распознавать их тут: https://www.online-decoder.com/ru

P.P.P.S. Учитывая количество сложностей, я бы забил вообще на удаление Outlook. Экономия 100-200Мбайт того не стоит, как мне кажется.

Последний раз редактировалось Avatar-Lion, 23-02-2024 в 11:13.

Это сообщение посчитали полезным следующие участники:

Отправлено: 18:36, 22-02-2024 | #4