Remover permanentemente o objeto pseudoprinter do Microsoft XPS Document Writer?

6

Por razões desconhecidas, muitos dos computadores (Windows XP SP3) que eu gerenciei recentemente começaram a criar um novo objeto pseudoprinter, chamado Microsoft XPS Document Writer , aparentemente do nada.

Isso é um problema porque, para alguns usuários (criados por meio do Usuário Local Dinâmico por meio do ZENworks), o gravador de documentos XPS está sendo definido como a impressora padrão!

Quando fiz a imagem para essas máquinas, certifiquei-me de excluir esse objeto pseudoprinter da área Impressoras e aparelhos de fax. Primeiro, gostaria de saber o que está causando sua recriação recente, mais de um ano depois.

Eu encontrei uma ferramenta para remover o objeto pseudo-impressora, seu driver e algumas outras coisas associadas. O problema é que é um aplicativo somente para GUI e requer interação do usuário.

Eu adoraria um utilitário como este que apenas exclua o objeto pseudoprinter, o driver, etc., sem interação do usuário , para que ele possa ser executado a partir do script de login.

Caso contrário, preciso saber exatamente como executar manualmente cada uma das etapas executadas pela Ferramenta de Remoção do XPS e, em seguida, criá-las. Ugh!

Qualquer ajuda seria muito apreciada!

    
por eleven81 27.08.2009 / 22:16

6 respostas

6

For reasons unknown, a great many of the (Windows XP SP3) computers I manage have recently started creating a new pseudoprinter object, called Microsoft XPS Document Writer, seemingly out of nowhere.

Se eu ler as coisas corretamente, a versão original do XPS Document Writer e os componentes relacionados para o Windows XP fornecidos como parte do .NET Framework 3.0, consulte, por exemplo, Visualizar e criar documentos XPS . Consequentemente, suponho que a razão pela qual esses componentes aparecem nesses sistemas seja uma instalação explícita ou implícita do .NET Framework 3.0, por exemplo, desencadeada por outro software que depende dele.

I would love a utility like this that just deletes the pseudoprinter object, driver, etc., without user interaction, so it can be run from the login script.

Presumivelmente, essa instalação é baseada no Windows Installer , que apresenta a funcionalidade de desinstalação adequada para administradores de sistema por design, mesmo na ausência de uma entrada explícita Adicionar / Remover Programa para usuários finais, consulte Opções de linha de comando do instalador padrão (também mostrado se estiver executando msiexec /? em uma linha de comando), por exemplo:

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

Consequentemente, existem algumas restrições :

  • A funcionalidade a ser desinstalada deve ter sido fornecida como um pacote do Windows Installer (.msi) em primeiro lugar , é claro, mesmo que esse pacote tenha sido empacotado / empacotado em outra entidade, por exemplo o instalador do .NET Framework; isso pode não ser necessariamente o caso , apesar de eu ficar surpreso se não.
  • Como mostrado, você precisará acessar o pacote de instalação original (.msi), que normalmente está sendo armazenado em cache no sistema para propósitos como este, ou você precisará do chamado ProductCode do pacote, conforme registrado no banco de dados do Windows Installer em todo o sistema.

É aqui que as coisas ficam complicadas (e potencialmente perigosas) em relação ao seu exemplo, porque você precisará encontrar um desses no seu sistema:
O Windows Installer cache geralmente está localizado em C:\Windows\Installer , os códigos de produto do Windows Installer estão registrados em HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall . Obviamente, você primeiro precisará de um termo para procurar (por exemplo, 'XPS') e para cada descoberta você deve definitivamente verificar se realmente denota o pacote que está procurando, senão você pode acabar acidentalmente removendo coisas importantes.

Abordagem alternativa:

Aparentemente, o pacote Microsoft XML Paper Specification Essentials é uma atualização para os bits fornecidos via .NET Framework 3.0 (consulte este artigo ). Dado que este é um pacote oficial do Windows Installer, a desinstalação descrita acima deve funcionar. Cheguei ao pacote por meio de Orca , e não é de surpreender parece incluir ações personalizadas para desinstalar componentes antigos, se presentes. Conseqüentemente, você poderá instalar este pacote primeiro, implicando na remoção dos bits instalados através do .NET Framework e imediatamente desinstalá-lo novamente para se livrar completamente da funcionalidade XPS:

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

Definitivamente, parece estranho instalar mais coisas primeiro, e pode ou não funcionar, mas no final pode ser mais simples e, portanto, vale a pena tentar.

    
por 02.09.2009 / 19:50
2

Execute isso como um script de inicialização

Cscript %WINDIR%\System32\prnmngr.vbs -d -p "Microsoft XPS Document Writer"
    
por 27.08.2009 / 23:06
0

Aqui está uma ideia para você. Se você usar o Symantec Ghost, poderá sempre criar uma instalação do AI para ele. Se você não está familiarizado com o processo, ele pega uma imagem do computador, você executa a instalação ou o script, pega outra imagem e cria um executável que faz todas as alterações. A única vez que fica estranho é se há uma reinicialização exigida no meio, caso contrário, funciona muito bem.

    
por 31.08.2009 / 22:02
0

se você enviar e-mail para os caras que fizeram a ferramenta, eles também têm uma ferramenta de linha de comando

    
por 04.09.2009 / 14:00
0

Aqui está um artigo que discute como remover o XPS Document Writer adicionando algumas linhas ao script de login do usuário.

Essencialmente você acabou de -

c:

cd \windows\system32\

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

Depois de confirmar que todos os usuários efetuaram login e executaram os comandos acima, você pode remover as linhas do script de login.

Aqui está um link para o artigo completo -

Para SysAds: Removendo o "XPS Document Writer" por Greg Martin

    
por 07.09.2009 / 17:06
0

Eu não vejo o problema agora. Você tem o comando para excluir a impressora XPS no loginscript. Se o objeto estiver lá, o script irá apagá-lo, caso contrário, ele será encerrado. Jó feito, com certeza?

Bizarely eu estou lutando para instalar este bicho de forma limpa, mas isso é outra história.

Mike

    
por 24.09.2009 / 15:31