Você está na página 1de 8

24/04/13

Como depurar servios do Windows

Find it myself Ask the community Get live help

Select the product you need help with

Windows

Internet Explorer

Office

Surface

Xbox

Skype

Windows Phone

More products

Como depurar servios do Windows


ID do artigo: 824344 - Exibir os produtos aos quais esse artigo se aplica.

Exibir Aviso de Iseno de Traduo Automtica Clique aqui para exibir o artigo traduzido e o artigo original em ingls, lado a lado.

Dica do Sistema Este artigo aplica-se a uma verso do Windows diferente da que voc est usando. O contedo deste artigo pode no ser relevante para voc.
Visite o Centro de Suporte de Windows 8

Sumrio
Este artigo passo a passo descreve como depurar um servio do Windows usando o depurador WinDbg (windbg.exe). Para depurar um servio do Windows, voc pode anexar o depurador WinDbg para o processo que hospeda o servio depois que o servio iniciado, ou voc pode configurar o servio para iniciar com o depurador WinDbg anexado para que voc pode solucionar problemas relacionados inicializao de servio. Este artigo descreve esses dois mtodos.

Requisitos
Este artigo pressupe que voc esteja familiarizado com os seguintes tpicos: Servios do Windows
support.microsoft.com/kb/824344/pt-br 1/8

24/04/13

Como depurar servios do Windows

Depurador WinDbg

Anexar o depurador WinDbg para um servio depois que o servio iniciado


Esse mtodo semelhante ao mtodo que voc pode usar para anexar um depurador a um processo e, em seguida, depurar um processo.

Use a identificao do processo do processo que hospeda o servio que voc deseja depurar
1. Para determinar o processo de identificao (PID) do processo que hospeda o servio que voc deseja depurar, use um dos seguintes mtodos. M to d o 1: Us a r o Ger encia d o r d e ta r efa s a. Com o boto direito na barra de tarefas e, em seguida, clique em Gerenciador de tarefas. Ser exibida a caixa de dilogo Gerenciador de tarefas do Windows . b. Clique na guia processos da caixa de dilogo Gerenciador de tarefas do Windows .. c. Em Nome da imagem, clique no nome de imagem do processo que hospeda o servio que voc deseja depurar. Observe a identificao do processo desse processo conforme especificado pelo valor do campo correspondente do PID . M to d o 2: Us a r o utilit r io d e lis ta d e ta r efa s (tlis t.exe) a. Clique em Iniciar e em Executar A caixa de dilogo Executar exibida. b. Na caixa Abrir , digite cmde, em seguida, clique em OK. c. No prompt de comando, altere o caminho do diretrio para refletir o local do arquivo tlist.exe no seu computador. Observao O arquivo tlist.exe est normalmente localizado no seguinte diretrio: C:\Program Files\Debugging Tools for Windows d. No prompt de comando, digite tlist para listar os nomes de imagem e o processo de IDs de todos os processos que esto sendo executados em seu computador. Observao Anote a identificao do processo do processo que hospeda o servio que voc deseja depurar. 2. Em um prompt de comando, altere o caminho do diretrio para refletir o local do arquivo windbg.exe no seu computador. Observao Se um prompt de comando no estiver aberto, execute as etapas um e b do mtodo 1. O arquivo windbg.exe est normalmente localizado no seguinte diretrio: C:\Program Files\Debugging Tools for Windows. 3. No prompt de comando, digite windbg p ProcessID /g para anexar o depurador WinDbg para o processo que hospeda o servio que voc deseja depurar. Observao: ProcessID um espao reservado para a identificao do processo do processo que hospeda o servio que voc deseja depurar.
support.microsoft.com/kb/824344/pt-br 2/8

24/04/13

Como depurar servios do Windows

Use o nome da imagem do processo que hospeda o servio que voc deseja depurar
Voc pode usar esse mtodo somente se houver exatamente uma instncia em execuo do processo que hospeda o servio que voc deseja executar. Para fazer isso, siga estes passos: 1. Clique em Iniciar e em Executar A caixa de dilogo Executar exibida. 2. Na caixa Abrir , digite cmde, em seguida, clique em OK para abrir um prompt de comando. 3. No prompt de comando, altere o caminho do diretrio para refletir o local do arquivo windbg.exe no seu computador. Observao O arquivo windbg.exe est normalmente localizado no seguinte diretrio: C:\Program Files\Debugging Tools for Windows. 4. No prompt de comando, digite windbg pn /g ImageName para anexar o depurador WinDbg para o processo que hospeda o servio que voc deseja depurar. ObservaoImageName um espao reservado para o nome da imagem do processo que hospeda o servio que voc deseja depurar. O "-pn" opo de linha de comando Especifica que o argumento de linha de comando ImageName o nome da imagem de um processo.

Inicie o depurador WinDbg e anexar ao processo que hospeda o servio que voc deseja depurar
1. Inicie o Windows Explorer. 2. Localize o arquivo windbg.exe no seu computador. Observao O arquivo windbg.exe est normalmente localizado no seguinte diretrio: C:\Program Files\Debugging Tools for Windows 3. Execute o arquivo windbg.exe em conjunto com a opo de linha de comando /g para iniciar o depurador WinDbg. A opo de linha de comando /g permite que o processo controlado continuar aps o ponto de interrupo est definido. 4. No menu arquivo , clique em Anexar a um processo para exibir a caixa de dilogo Attach to Process .. 5. Clique para selecionar o n que corresponde ao processo que hospeda o servio que voc deseja depurar e, em seguida, clique em OK. 6. Na caixa de dilogo que aparece, clique em Sim para salvar as informaes de base do espao de trabalho. Observe que voc pode depurar o cdigo desmontado do seu servio.

Configurar um servio para iniciar com o depurador WinDbg anexado


Voc pode usar esse mtodo para depurar servios se voc quiser solucionar problemas relacionados inicializao de servio. 1. Configure as opes de "Execuo do arquivo de imagem". Para fazer isso, use um dos seguintes mtodos: M to d o 1: Us a r o E d ito r d e s ina liza d o r es g lo b a is (g fla g s .exe) a. Inicie o Windows Explorer. b. Localize o arquivo gflags.exe no seu computador.
support.microsoft.com/kb/824344/pt-br 3/8

24/04/13

Como depurar servios do Windows

Observao O arquivo gflags.exe est normalmente localizado no seguinte diretrio: C:\Program Files\Debugging Tools for Windows. c. Execute o arquivo gflags.exe para iniciar o Editor de sinalizadores globais. d. Na caixa de texto Nome do arquivo de imagem , digite o nome da imagem do processo que hospeda o servio que voc deseja depurar. Por exemplo, se voc deseja depurar um servio hospedado por um processo que tem MyService.exe como o nome da imagem, digite MyService.exe. e. Em destino, clique para selecionar a opo Opes de arquivo de imagem .. f. Em Opes de depurador de imagem, clique para selecionar a caixa de seleo do depurador .. g. Na caixa de texto do depurador , digite o caminho completo do depurador que voc deseja usar. Por exemplo, se voc quiser usar o depurador WinDbg para depurar um servio, voc pode digitar um caminho completo que semelhante seguinte: C:\Program Files\Debugging Tools para Windows\windbg.exe h. Clique em Aplicare, em seguida, clique em OK para fechar o Editor de sinalizadores globais. M to d o 2: Us a r o E d ito r d o r eg is tr o a. Clique em Iniciar e em Executar A caixa de dilogo Executar exibida. b. Na caixa Abrir , digite regedite, em seguida, clique em OK para iniciar o Editor do registro. c. Importante Esta seo, mtodo ou tarefa contm etapas que informam sobre como modificar o registro. No entanto, srios problemas podero ocorrer se voc modificar o registro incorretamente. Portanto, certifique-se de que voc siga estas etapas cuidadosamente. Para maior proteo, faa backup do registro antes de modific-lo. Em seguida, voc poder restaurar o registro se ocorrer um problema. Para obter mais informaes sobre como fazer backup e restaurar o registro, clique no nmero abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft: 322756 (http://support.microsoft.com/kb/322756/) Como fazer backup e restaurar o registro no Windows

No Editor do registro, localize e, em seguida, clique na seguinte subchave do registro: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Image File Execution Options d. Aponte para Novoe, em seguida, clique em chave. No painel esquerdo do Editor do registro, observe que a Nova chave #1 (o nome da nova subchave de registro) est selecionado para edio. e. Digite ImageName para substituir a Nova chave #1e pressione ENTER. Observao: ImageName um espao reservado para o nome da imagem do processo que hospeda o servio que voc deseja depurar. Por exemplo, se voc deseja depurar um servio hospedado por um processo que tem MyService.exe como o nome da imagem, digite MyService.exe. f. Com o boto direito na subchave do registro que voc criou na etapa e. g. Aponte para Novoe, em seguida, clique em Valor de seqncia de caracteres. No painel direita do Editor do registro, observe que o Novo valor de #1, o nome de uma nova entrada de registro est selecionado para edio. h. Substitua o Novo valor de #1 com o depuradore, em seguida, pressione ENTER.
support.microsoft.com/kb/824344/pt-br 4/8

24/04/13

Como depurar servios do Windows

i. Com o boto direito a entrada de registro do depurador que voc criou na etapa h e, em seguida, clique em Modificar. A caixa de dilogo Editar seqncia aparece. j. Na caixa de texto dados do valor , digite DebuggerPathe, em seguida, clique em OK. Observao: DebuggerPath um espao reservado para o caminho completo do depurador que voc deseja usar. Por exemplo, se voc quiser usar o depurador WinDbg para depurar um servio, voc pode digitar um caminho completo que semelhante seguinte: C:\Progra~1\Debugg~1\windbg.exe 2. Para a janela do depurador aparea na rea de trabalho e para interagir com o depurador, torne seu servio interativo. Se voc no fizer o servio interativo, o depurador ser iniciado mas no pode v-lo e no pode emitir comandos. Para tornar seu servio interativo, use um dos seguintes mtodos: M to d o 1: Us a r o co ns o le d e s er vio s a. Clique em Iniciare, em seguida, aponte para programas. b. No menu programas , aponte para Ferramentas administrativase, em seguida, clique em Servios. O console de Servios aparece. c. No painel direito do console Servios , clique com boto direito ServiceNamee, em seguida, clique em Propriedades. Observao: ServiceName um espao reservado para o nome do servio que voc deseja depurar. d. Na guia Logon , clique para selecionar a caixa de seleo Permitir que o servio interaja com a rea de trabalho na conta Sistema Locale, em seguida, clique em OK. M to d o 2: Us a r o E d ito r d o r eg is tr o a. No Editor do registro, localize e, em seguida, clique na seguinte subchave do registro: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceName Observao Substitua ServiceName o nome do servio que voc deseja depurar. Por exemplo, se voc deseja depurar um servio chamado MyService, localize e, em seguida, clique na seguinte chave de registro: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MyService b. No campo nome no painel direita do Editor do registro, tipode atalho e, em seguida, clique em Modificar. A caixa de dilogo Editar valor DWORD exibida. c. Altere o texto na caixa de texto dados do valor para o resultado da operao ou binria com o valor binrio do texto atual e o valor binrio, 0x00000100, como dois operandos. O valor binrio, 0x00000100, corresponde constante SERVICE_INTERACTIVE_PROCESS que definido no arquivo de cabealho Winnt. H em seu computador. Essa constante Especifica que um servio interativo por natureza. 3. Quando um servio iniciado, o servio se comunica para o Service Control Manager quanto o servio deve ter para iniciar (o perodo de tempo limite para o servio). Se o Gerenciador de controle de servio no receber um aviso de "servio iniciado" do servio dentro desse perodo de tempo limite, o Gerenciador de controle de servio encerra o processo que hospeda o servio. Esse perodo de tempo limite geralmente menos de 30 segundos. Se
support.microsoft.com/kb/824344/pt-br 5/8

24/04/13

Como depurar servios do Windows

voc no ajustar esse perodo de tempo limite, o Gerenciador de controle de servio termina o processo e o depurador anexado enquanto voc est tentando depurar. Para ajustar esse perodo de tempo limite, execute essas etapas: a. No Editor do registro, localize e, em seguida, clique na seguinte subchave do registro: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control b. Aponte para Novoe, em seguida, clique em Valor DWORD . No painel direita do Editor do registro, observe que o Novo valor de #1 (o nome de uma nova entrada de registro) est selecionado para edio. c. Digite ServicesPipeTimeout para substituir o Novo valor de #1e pressione ENTER. d. Com o boto direito a entrada de registro ServicesPipeTimeout que voc criou na etapa c e, em seguida, clique em Modificar. A caixa de dilogo Editar valor DWORD exibida. e. Na caixa de texto dados do valor , digite TimeoutPeriode, em seguida, clique em OK Observao: TimeoutPeriod um espao reservado para o valor do perodo de tempo limite (em milissegundos) que voc deseja definir para o servio. Por exemplo, se voc deseja definir o perodo de tempo limite de 24 horas (86400000 milissegundos), digite 86400000. f. Reinicie o computador. Voc deve reiniciar o computador para o Service Control Manager para aplicar a alterao. 4. Inicie o servio do Windows. Para fazer isso, siga estes passos: a. Clique em Iniciare, em seguida, aponte para programas. b. No menu programas , aponte para Ferramentas administrativase, em seguida, clique em Servios. O console de Servios aparece. c. No painel direito do console Servios , clique com boto direito ServiceNamee, em seguida, clique em Iniciar. Observao: ServiceName um espao reservado para o nome do servio que voc deseja depurar.

Soluo de problemas:
Antes de tentar depurar um servio em uma rede, certifique-se de que os smbolos e os arquivos de origem que usa o servio so acessveis a partir do computador onde o servio ser executado. Para fazer isso, use um dos seguintes mtodos: Conceda permisses de pelo menos acesso de leitura a todos para a pasta no computador que contm os smbolos e os arquivos de origem que usa o servio. Copie esses smbolos e os arquivos de origem que usa o servio para o computador onde o servio ser executado.

Referncias
Para baixar as ferramentas e utilitrios que so mencionados neste artigo, visite o seguinte site da Microsoft: Ferramentas de depurao para Windows: Viso geral
support.microsoft.com/kb/824344/pt-br 6/8

24/04/13

Como depurar servios do Windows

http://www.microsoft.com/whdc/devtools/debugging/default.mspx (http://www.microsoft.com/whdc/devtools/debugging/default.mspx) Para obter mais informaes, visite os seguintes sites da Microsoft Developer Network (MSDN): Depurador WinDbg http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx (http://www.microsoft.com/whdc/devtools/debugging/installx86.mspx) Servios http://msdn2.microsoft.com/en-us/library/ms685141.aspx (http://msdn2.microsoft.com/en-us/library/ms685141.aspx) Usando o utilitrio de sinalizadores globais http://msdn2.microsoft.com/en-us/library/ms792858.aspx (http://msdn2.microsoft.com/en-us/library/ms792858.aspx)

Propriedades
ID do artigo: 824344 - ltima reviso: quarta-feira, 16 de maio de 2007 - Reviso: 6.5 A info r ma o co ntid a nes te a r tig o a p lica -s e a :
Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows Microsoft Windows 2000 Server 2000 Advanced Server 2000 Datacenter Server 2000 Professional Edition Server 2003, Enterprise Edition (32-bit x86) Server 2003, Standard Edition (32-bit x86) Server 2003, Datacenter Edition (32-bit x86) XP Home Edition XP Home Edition SP1 XP Home Edition SP1a XP Home Edition SP2 XP Professional XP Professional SP1 XP Professional SP1a XP Professional SP2

Pa la vr a s -cha ve: kbmt kbimghlp kbregistry kbservice kbdebug kbmisctools kbhowtomaster KB824344 KbMtpt Traduo automtica
IMPORTANTE: Este artigo foi traduzido por um sistema de traduo automtica (tambm designado por Machine Translation ou MT), no tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicaes (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em portugus a totalidade dos artigos existentes na base de dados de suporte. No entanto, a traduo automtica no sempre perfeita, podendo conter erros de vocabulrio, sintaxe ou gramtica. A Microsoft no responsvel por incoerncias, erros ou prejuzos ocorridos em decorrncia da utilizao dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizaes freqentes ao software de traduo automtica (MT). Obrigado. Clique aqui para ver a verso em Ingls deste artigo: 824344 (http://support.microsoft.com/kb/824344/en-us/ )

Submeter comentrios
support.microsoft.com/kb/824344/pt-br 7/8

24/04/13

Como depurar servios do Windows

Voltar para o incio

support.microsoft.com/kb/824344/pt-br

8/8

Você também pode gostar