Follow admAndreLuiz on Twitter

terça-feira, 26 de outubro de 2010

Problemas de Impressão em Remote Desktop Service (Terminal Service) Parte 7

Imprimindo numa impressoa mapeada (2003 systems) combatendo a ineficiência

Mapeie a impressora direto no terminal server assim o terminal server pode mandar a trabalho de impressão direto para a fila .

É possivel também usar uma solução de terceiros

Sequencia de Mapeamento de driver no cliente

É importante na resolução de problemas entedermos como funciona o mapeamento do driver no ambiente de Terminal no 2003, ou seja o que o sistema faz quando voce se conecta a uma sessão de terminal e tem impressoras mapeadas na sua estação por exemplo:

1 A lista de impressoras locais do cliente é enumerada do registro.

2 O servidor consulta os nomes de cadeia de caracteres do driver de impressora no cliente

3 O servidor deve procurar o nome de driver de impressora cliente no arquivo INF mapeamento de driver de impressora.

4 Se se nenhuma correspondência for encontrada, o servidor procura por uma combinação de nome de driver na sessão [Previous Names] no arquivo “ntprint.inf ” .

5 Se o servidor ainda não localizou as informações de mapeamento, ele verifica se o driver já está instalado. Para fazer isso, ele analisa HKLM\System\CurrentControSet\Control\Print\Environments\Windows NT x86\Drivers\ no registro.

6 Se ainda nao conseguiu é entendido que o driver não está instalado. Como um último recurso, o servidor irá verificar para ver se a impressora do cliente é uma das centenas de impressoras padrão que estão disponíveis com o Windows. Para isso voltamos ao arquivo ntprint.inf sessão [Manufacturer] section. Se uma correspondência é encontrada o servidor instala o driver extraindo do arrquivo Driver.cab localizado em %systemroot%\Driver Cache\i386 no servidor .

7 Uma vez que qualquer uma dessas etapas for bem sucedida, o servidor cria uma porta de impressora dinâmica que mapeia de volta para a impressora real no dispositivo de cliente. Esta porta é mapeada por um canal virtual RDP. Em seguida, o servidor cria um objeto de impressora com as permissões apropriadas (e usando os drivers apropriados) para o usuário.

8 Se o servidor não é capaz de encontrar um driver apropriado usando qualquer um dos métodos anteriores, então a impressora do cliente não é mapeada e um evento que afirma que a impressora não poderia ser redirecionada é gravado no log de eventos.

9 O servidor inicia todo esse processo sobre novamente para a próxima impressora na lista do cliente.

Problemas quando usamos mapeamentos de impressora no cliente

Existe problemas em resolução de nome de impressoras em clientes pré-windows2000 :windows 95 “Hewlett Packard LaserJet 5P é diferente de  Windows 2000/XP/2003 “HP LaserJet 5P.” ou seja se voce usa uma estação W95 com essa impressora mapeada e entra numa sessão de terminal , teremos problema de resolução de nome.

Outro problema é que teremos Muitos Drivers Instalados

Resolvendo Problemas de mapeamento

•Terminal Server Printer Driver Redirection Wizard

http://www.microsoft.com/downloads/details.aspx?FamilyId=9AD27BE9-40DB-484F-862E-38A094EEEAF7&displaylang=en#Overview

O Terminal Server Printer Driver Redirection Wizard  irá ajudá-lo a solucionar problemas e substituir os drivers de impressão que foram redirecionados sem sucesso. Esta ferramenta automatiza o processo encontrado no artigo  KB239088 intitulada "Windows 2000 Terminal Services Server Logs de eventos de 1111, 1105 e 1006" http://support.microsoft.com/?id=239088

Esta ferramenta irá analisar o log de eventos do sistema do servidor e detectar todos os eventos com ID 1111 e fonte 'TermServDevices'. A ferramenta irá então analisar o registro do server drivers Version 3 MINI instalados e pedir-lhe para substituir um driver version 3 MINI para cada impressora que falhou o redirecionamento de impressora. Quaisquer alterações serão gravadas em um arquivo chamado NTPrintSubs.inf, que é onde são armazenados os mapeamentos de impressoras redirecionadas persolanilzadas pelo usuário

• Edição do Registro

Abra o Regedt32.exe e localize a seguinte chave: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\rdpwd

Adicione os seguintes valores: Nome: PrinterMappingINFName
Tipo: REG_SZ
Dados: Nome do arquivo .inf para o qual você deseja redirecionar as pesquisas.
Exemplo: c:\winnt\inf\ntprintsubs.inf
Nome: PrinterMappingINFSection
Tipo: REG_SZ
Dados: Nome da seção no arquivo .inf para a qual você deseja redirecionar as pesquisas. Exemplo: Impressoras

OBSERVAÇÃO: O formato da seção [Nomes anteriores] no arquivo Ntprint.inf é exatamente o contrário do arquivo .inf definido pelo usuário. No arquivo Ntprint.inf, o driver do lado do cliente está no lado direito e o driver do lado do servidor está no lado esquerdo.

Se o arquivo .inf personalizado contiver erros de sintaxe, a seguinte mensagem no log de eventos será exibida: Event 1110: "Erro ao processar ntprint.inf. Se o arquivo no sistema estiver corrompido, será possível restaurá-lo a partir da mídia de instalação

Essa mensagem não é muita clara, porque refere-se ao arquivo Ntprint.inf. Apesar desse erro realmente significar que o Ntprint.inf está corrompido, ele normalmente refere-se aos erros no arquivo .inf personalizado.

veja o video abaixo :

Um comentário:

Anônimo disse...

Keep posting stuff like this i really like it