sábado, 29 de janeiro de 2011

Resolva o problema: "processo SPOOLSV.EXE consumindo 100% de processamento (CPU)"


ATENÇÃO, ESSE CONTEÚDO É TOTALMENTE COPIADO DO LINK 
SÓ O COPIEI AQUI PORQUE ACHEI MUITO INTERESSANTE, USO-O VEZ OU OUTRA E FIQUEI COM MEDO DE SER TIRADO DAQUELE SITE.
COPIEI-O NA ÍNTEGRA MESMO.
OBSERVEM QUE O CRIADOR DO ARQUIVO É SR. GUTEMBERG LIMA, MANTENEDOR DO SITE.



Dica válida para Windows 7, Vista, Server 2008XP e Server 2003.

Nas minhas andanças nas empresas onde presto suporte técnico, normalmente me deparo com usuários reclamando de lentidão excessiva em suas estações.

Como de costume, dou uma verificada no Gerenciador de tarefas do Windows  a fim de identificar se existe algum processo que esteja consumindo excessivamente poder de processamento (CPU) ou memória.

Daí, vez por outra, percebo que o processo spoolsv.exe está consumindo absurdos 99%  de uso de CPU. Com isso não é de admirar que o computador fique absurdamente lento, tendo em vista que o processador está completamente ocupado com o referido processo.

O processo Spoolsv.exe está diretamente relacionado com o serviço SPOOLER DE IMPRESSÃO. Isto significa que se o processo Spoolsv.exe for finalizado, o usuário não poderá trabalhar com a sua ou suas impressoras, sejam elas locais (instaladas no próprio micro) ou instaladas em outro computador (acesso através da rede).
A pergunta que fica é: Como podemos resolver isso? 

SPOOLSV.exe consumindo praticamente 100% de CPU
Processo SPOOLSV consumindo praticamente 100% de processamento
(Clique na imagem acima para ampliar)


Solucionando o problema no processo SPOOLSV.exe

Embora eu ainda NÃO tenha visto este problema ocorrer com o Windows 7, Vista e Windows Server 2008, resolvi postar esta matéria sendo destinada a todos os sistemas Windows a partir do XP e Server 2003.

Na realidade existem três motivos pelos quais o processo spoolsv.exe pode consumir excessivo processamento.
  1. Arquivos corrompidos na subpasta PRINTERS
  2. Impressora imprimindo na porta errada. Por exemplo: Uma impressora USB configurada para imprimir numa porta LPT1.
  3. Problema com Microsoft Office Document Image Writer

Arquivos corrompidos na subpasta PRINTERS

OBS: Para executar estes procedimentos você deve ter feito logon com uma conta de usuário com privilégios de Administrador.

Para corrigir esta falha, faça o seguinte:

1. Antes de qualquer coisa, é necessário pararmos o serviço SPOOLER DE IMPRESSÃO. Se não pararmos este serviço, não conseguiremos deletar os arquivos da subpastaPRINTERS (Isto será visto mais à frente).

Para isso execute o comando abaixo clicando antes  no menu Iniciar - Executar(para Windows XP e Server 2003) ou em Iniciar - Iniciar Pesquisa (para Windows Server 2008). Para Windows 7 pressione a tecla com logomarca do Windows+ a tecla R.

net stop spooler

Pressione ENTER
Ao executar este comando, todas as impressoras locais residentes em Impressoras e aparelhos de fax (Windows XP/Server 2003) ou em Dispositivos e impressoras(Windows 7/Server 2008 R2) desaparecerão. Isto é normal.

OBSERVAÇÃO IMPORTANTE: Ao parar o serviço de impressão (SPOOLER DE IMPRESSÃO) todos os documentos na fila de impressão da(s) impressora(s) serão perdidos. Portanto, os usuários deverão reenviar seus documentos após a correção do erro.

2. Em seguida, clique no menu Iniciar - Executar (para Windows XP e Server 2003) ou em Iniciar - Iniciar Pesquisa (para Windows Server 2008). Para Windows 7 pressione a tecla com logomarca do Windows + a tecla R.

3. Digite este caminho na janela do Executar:

%windir%\system32\spool\printers

Pressione ENTER

Onde %windir% representa a pasta Windows e os demais são apenas subpastas da pasta Windows.

4. Ao entrar na pasta Printers apague todos os arquivos presentes na mesma.

(Obs: Caso não consiga remover os arquivos da pasta Printers, reinicie o micro e acesse seu Windows em Modo Seguro.)

5. Agora execute o comando abaixo na janela do "Executar" para iniciar o serviço SPOOLER DE IMPRESSÃO:

net start spooler

Pressione ENTER

Agora que o serviço de impressão foi iniciado verifique no Gerenciador de tarefas do Windows se o processo Spoolsv.exe agora está com uso de CPU normal, ou seja, em0%. É claro que se o computador em questão compartilha uma ou mais impressoras na rede, é possível que o processo não esteja em 0%, mas pelo menos ficará normalmente bem abaixo de 100%.

Impressora imprimindo na porta errada

OBS: Para executar estes procedimentos você deve ter feito logon com uma conta de usuário com privilégios de Administrador.

1. Para isso execute o comando abaixo clicando antes  no menu Iniciar - Executar(para Windows XP e Server 2003) ou em Iniciar - Iniciar Pesquisa (para Windows Server 2008). Para Windows 7 pressione a tecla com logomarca do Windows + a teclaR.

net stop spooler

Pressione ENTER

E em seguida execute:

net start spooler

Pressione ENTER

2. Clique no menu Iniciar - Impressoras e aparelhos de fax (Windows XP/Server 2003) ou em Impressoras (Windows Server 2008) ou ainda emDispositivos e impressoras (Windows 7).

3.  CENÁRIO:
Digamos que exista uma impressora USB chamada Epson C65 e que a mesma foi configurada incorretamente para imprimir na porta LPT1. Daí um usuário envia uma impressão e verifica que após isso seu computador tornou-se instável.

Portanto, clique com o botão direito do mouse sobre a impressora Epson C65 e em seguida clique com o botão esquerdo sobre Propriedades. Para Windows 7 você deve clicar com o botão direito do mouse sobre a impressora e em seguida clicar com o botão esquerdo em Propriedades da impressora.

4. Agora clique na guia Portas.

5. Após verificar que a impressora está imprimindo na porta errada, selecione a porta correta conforme as figuras abaixo:


Impressora USB Epson C65 configurada para imprimir na porta LPT1
Impressora USB Epson C65 configurada para imprimir na porta LPT1
(Clique na imagem para ampliar)

Impressora USB Epson C65 configurada para imprimir na porta correta
Impressora USB Epson C65 configurada para imprimir na porta correta
(Clique na imagem para ampliar)

6. Após selecionar a porta correta clique em OK

7. Verifique se a lentidão acabou visualizando o Gerenciador de tarefas do Windows. 

Microsoft Office Document Image Writer

Às vezes pode acontecer que o usuário ao invés de enviar seu trabalho de impressão para sua impressora, ele acabe enviando acidentalmente para a impressora virtual (acredito que posso chamá-la assim) Microsoft Office Document Image Writer. Clique aqui para entender o que significa. 
Ao ficarem presos os documentos nesta "impressora", é possível que o processo spoolsv.exe use 100% de processamento. Muitos técnicos costumam ver este erro acontecer com frequência em computadores rodando o Windows XP nas empresas.

OBS: Para executar estes procedimentos você deve ter feito logon com uma conta de usuário com privilégios de Administrador.

1. Execute os comandos abaixo clicando antes no menu Iniciar - Executar(Windows XP/Server 2003).

net stop spooler

Pressione ENTER

E em seguida execute:

net start spooler

Pressione ENTER


2. Verifique se Microsoft Office Document Image Writer está definida como impressora padrão. Caso esteja, marque como impressora padrão a verdadeira impressora do usuário. Fazendo isso, você impedirá o usuário de imprimir na impressora lógica incorreta.

3. Se esta "impressora" não for necessária, você pode excluí-la.

4. Verifique se a lentidão acabou visualizando o Gerenciador de tarefas do Windows. 

Espero ter contribuído ao seu conhecimento.

Um comentário:

Anônimo disse...

Parabéns ótimo post, resolveu meu problema, continue assim cara lhe sou grato!