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

Удалить объект псевдопринтера Microsoft XPS Document Writer навсегда?

По неизвестным причинам очень многие из компьютеров (Windows XP SP3), которыми я управляю, недавно начали создавать новый объект псевдопринтера, который называется Средство записи документов Microsoft XPS, казалось бы, из ниоткуда.

Это проблема, потому что для некоторых пользователей (созданных с помощью динамического локального пользователя через ZENworks) средство записи документов XPS устанавливается как принтер по умолчанию!

Когда я делал образ для этих машин, я обязательно удалил этот объект псевдопринтера из области «Принтеры и факсы». Сначала я хотел бы знать, что заставило его воссоздать его недавно, более года спустя.

я нашел инструмент для удаления объекта псевдопринтера, его драйвера и некоторых других связанных вещей. Проблема в том, что это приложение только с графическим интерфейсом и требует взаимодействия с пользователем.

Мне бы очень понравилась такая утилита, которая просто удаляет объект псевдопринтера, драйвер и т. Д., без взаимодействия с пользователем, поэтому его можно запустить из сценария входа.

В противном случае мне нужно точно знать, как вручную выполнить каждый из шагов, которые выполняет XPS Removal Tool, а затем создать для них сценарий. Ух!

Любая помощь будет принята с благодарностью!

По неизвестным причинам огромное количество компьютеров (Windows XP SP3), которыми я управляю, недавно начали создавать новый объект псевдопринтера, называемый Microsoft XPS Document Writer, казалось бы, из ниоткуда.

Если я правильно прочитал исходную версию XPS Document Writer и связанных компонентов для Windows XP, поставляемых как часть .NET Framework 3.0, см., Например, Просмотр и создание документов XPS. Следовательно, я полагаю, что причиной появления этих компонентов в этих системах является явная или неявная установка .NET Framework 3.0, например запускается другим программным обеспечением, которое от него зависит.

Мне бы очень понравилась такая утилита, которая просто удаляет объект псевдопринтера, драйвер и т. Д. Без взаимодействия с пользователем, чтобы ее можно было запустить из сценария входа в систему.

Предположительно эта установка основана на Установщик Windows под капотом, который имеет правильную функциональность удаления для системных администраторов по замыслу, даже при отсутствии явного Добавить / удалить программу запись для конечных пользователей, см. Параметры командной строки стандартного установщика (также отображается при выполнении msiexec /? в командной строке), например:

msiexec /uninstall /quiet YourInstallationPackage.msi
msiexec /uninstall /quiet {12345678-1234-1234-1234-123456789012}

Следовательно, есть некоторые ограничения хотя:

  • Функциональность, которую нужно удалить в первую очередь должен быть предоставлен в виде пакета установщика Windows (.msi) конечно, даже если этот пакет, в свою очередь, был объединен / упакован в другой объект, например установщик .NET Framework; это не обязательно так, хотя я бы удивился, если нет.
  • Как показано, вам понадобится либо доступ к исходному установочному пакету (.msi), который обычно кэшируется в системе для подобных целей, либо вам понадобится так называемый ProductCode пакета, как записано в общесистемной базе данных установщика Windows.

Здесь все становится сложным (и потенциально опасным) в отношении вашего примера, потому что вам нужно будет найти один из них в своей системе:
В Windows Installer кеш обычно находится в C:\Windows\Installer, коды продуктов установщика Windows зарегистрированы под HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall. Очевидно, вам сначала понадобится какой-то термин для поиска (например, «XPS»), и для каждой находки вы должны обязательно проверять, действительно ли он обозначает пакет, который вы ищете, иначе вы можете случайно удалить важные вещи.


Альтернативный подход:

Видимо Пакет Microsoft XML Paper Specification Essentials Pack является обновлением этих битов, поставляемых через .NET Framework 3.0 (см. Эта статья). Учитывая, что это официальный установочный пакет Windows, удаление, как описано выше, определенно должно сработать. Я проник в пакет через Orca, и неудивительно, что это кажется чтобы включить настраиваемые действия для удаления старых компонентов, если они есть. Следовательно, вы можете сначала установить этот пакет, подразумевая удаление битов, установленных через .NET Framework, а затем немедленно удалить его снова, чтобы полностью избавиться от функциональности XPS:

msiexec /install /quiet 'XPSEP XP and Server 2003 32 bit.msi'
msiexec /uninstall /quiet 'XPSEP XP and Server 2003 32 bit.msi'

Определенно кажется странным сначала установить больше вещей, и это может работать, а может и не работать, но, в конце концов, это может быть проще и, следовательно, стоит попробовать.

Запустите это как сценарий запуска

Cscript %WINDIR%\System32\prnmngr.vbs -d -p "Microsoft XPS Document Writer"

Вот вам идея. Если вы используете Symantec Ghost, вы всегда можете создать для него установку AI. Если вы не знакомы с процессом, он берет образ компьютера, вы запускаете установку или скрипт, он берет другой образ, а затем создает исполняемый файл, который вносит все изменения. Единственный раз, когда это становится странным, - это если в середине требуется перезагрузка, в противном случае он отлично работает.

если вы напишете по электронной почте ребятам, которые сделали инструмент, у них тоже есть инструмент командной строки

Вот статья, в которой обсуждается, как удалить XPS Document Writer, добавив несколько строк в сценарий входа пользователя.

По сути, вы только что -

c:

cd \windows\system32\

cscript prnmngr.vbs -d -p "Microsoft XPS Document Writer"

Убедившись, что все пользователи вошли в систему и выполнили вышеуказанные команды, вы можете удалить строки из сценария входа.

Вот ссылка на полную статью -

Для SysAds: Удаление "XPS Document Writer" Грегом Мартином

Сейчас я не вижу проблемы. У вас есть команда для удаления принтера XPS в логинскрипте. Если объект есть, скрипт удалит его, если нет - выйдет. Работа сделана?

Как ни странно, я пытаюсь установить это существо чисто, но это уже другая история.

Майк