Ativando um servidor de depuração
Há duas maneiras de ativar o servidor de depuração. Ele pode ser ativado quando o depurador é iniciado usando a opção -server linha de comando em uma janela do Prompt de Comando com privilégios elevados (Executar como Administrador). Ele também pode ser ativado depois que o depurador estiver em execução. Inicie o depurador com privilégios elevados (Executar como Administrador) e insira o comando .server.
Observação Você pode ativar um servidor de depuração sem ter privilégios elevados e os clientes de depuração poderão se conectar ao servidor. No entanto, os clientes não poderão descobrir um servidor de depuração, a menos que ele tenha sido ativado com privilégios elevados. Para obter informações sobre como descobrir servidores de depuração, consulte Pesquisando servidores de depuração.
Importante
Há considerações de segurança importantes adicionais ao usar a depuração remota, para obter mais informações, incluindo informações sobre como habilitar o modo seguro, consulte Segurança durante de depuração remota e considerações de segurança para ferramentas de depuração do Windows.
Os depuradores dão suporte a vários protocolos de transporte: pipe nomeado (NPIPE), TCP, porta COM, SPIPE (pipe seguro) e SSL (camada de soquetes seguros).
A sintaxe geral para ativar um servidor de depuração depende do protocolo usado.
métodos de conexão recomendados, com alguns de segurança adicionais
Debugger -server spipe:proto=Protocol,{certuser=Cert|machuser=Cert},pipe=PipeName[,hidden][,password=Password] [-noio] [Options]
Debugger -server ssl:proto=Protocol,{certuser=Cert|machuser=Cert},port=Socket[,hidden][,password=Password] [-noio] [Options]
Debugger -server ssl:proto=Protocol,{certuser=Cert|machuser=Cert},port=Socket,clicon=Client[,password=Password] [-noio] [Options]
métodos de conexão não seguros
Debugger -server npipe:pipe=PipeName[,hidden][,password=Password][,IcfEnable] [-noio] [Options]
Debugger -server tcp:port=Socket[,hidden][,password=Password][,ipversion=6][,IcfEnable] [-noio] [Options]
Debugger -server tcp:port=Socket,clicon=Client[,password=Password][,ipversion=6] [-noio] [Options]
Debugger -server com:port=COMPort,baud=BaudRate,channel=COMChannel[,hidden][,password=Password] [-noio] [Options]
Outro método de ativação de um servidor de depuração é usar o comando .server (Criar Servidor de Depuração) depois que o depurador já tiver sido iniciado.
métodos de conexão recomendados, com alguns de segurança adicionais
.server spipe:proto=Protocol,{certuser=Cert|machuser=Cert},pipe=PipeName[,hidden][,password=Password]
.server ssl:proto=Protocol,{certuser=Cert|machuser=Cert},port=Socket[,hidden][,password=Password]
.server ssl:proto=Protocol,{certuser=Cert|machuser=Cert},port=Socket,clicon=Client[,password=Password]
métodos de conexão não seguros
.server npipe:pipe=PipeName[,hidden][,password=Password][,IcfEnable]
.server tcp:port=Socket[,hidden][,password=Password][,ipversion=6][,IcfEnable]
.server tcp:port=Socket,clicon=Client[,password=Password][,ipversion=6]
.server com:port=COMPort,baud=BaudRate,channel=COMChannel[,hidden][,password=Password]
Parâmetros
Os parâmetros nos comandos anteriores têm os seguintes valores possíveis:
depurador
Pode ser KD, CDB, NTSD ou WinDbg.
pipe=PipeName
Quando o protocolo NPIPE ou SPIPE é usado, PipeName é uma cadeia de caracteres que servirá como o nome do pipe. Cada nome de pipe deve identificar um servidor de depuração exclusivo. Se você tentar reutilizar um nome de pipe, receberá uma mensagem de erro.
pipeName não deve conter espaços ou aspas.
Observação Talvez seja necessário habilitar o compartilhamento de arquivos e impressoras no computador que está executando o servidor de depuração. No Painel de Controle, navegue até Rede e Internet > Rede e Centro de Compartilhamento> Configurações avançadas de compartilhamento. Selecione Ativarde compartilhamento de arquivo e impressora.
Quando o protocolo TCP ou SSL é usado, soquete é o número da porta do soquete.
Também é possível especificar um intervalo de portas separadas por dois-pontos. O depurador verificará cada porta nesse intervalo para ver se ela é gratuita. Se encontrar uma porta gratuita e nenhum erro ocorrer, o servidor de depuração será criado. O cliente de depuração precisará especificar a porta real que está sendo usada para se conectar ao servidor. Para determinar a porta real, use qualquer um dos métodos descritos em Pesquisar servidores de depuração; quando esse servidor de depuração for exibido, a porta será seguida por dois números separados por dois-pontos. O primeiro número será a porta real usada; o segundo pode ser ignorado. Por exemplo, se a porta foi especificada como porta=51:60e a porta 53 foi realmente usada, os resultados da pesquisa mostrarão "port=53:60". (Se você estiver usando o parâmetro clicon para estabelecer uma conexão inversa, o cliente de depuração poderá especificar um intervalo de portas dessa maneira, enquanto o servidor deverá especificar a porta real usada.)
clicon=client
Quando o protocolo TCP ou SSL é usado e o parâmetro clicon é especificado, uma conexão inversa será aberta. Isso significa que o servidor de depuração tentará se conectar ao cliente de depuração, em vez de permitir que o cliente inicie o contato. Isso pode ser útil se você tiver um firewall que esteja impedindo uma conexão na direção usual.
cliente especifica o nome da rede ou o endereço IP do computador no qual o cliente de depuração existe ou será criado. As duas barras iniciais (\) são opcionais.
Como o servidor está procurando um cliente específico, você não pode conectar vários clientes ao servidor se usar esse método. Se a conexão for recusada ou estiver interrompida, você precisará reiniciar a conexão do servidor. Um servidor de conexão reversa não será exibido quando outro depurador exibir todos os servidores ativos.
Observação Quando clicon é usado, é melhor iniciar o cliente de depuração antes que o servidor de depuração seja criado, embora a ordem usual (servidor antes do cliente) também seja permitida.
porta= COMPort
Quando o protocolo COM é usado, COMPort especifica a porta COM a ser usada. O prefixo "COM" é opcional , por exemplo, "com2" e "2" são aceitáveis.
baud= BaudRate
Quando o protocolo COM é usado, BaudRate especifica a taxa de baud na qual a conexão será executada. Qualquer taxa de baud compatível com o hardware é permitida.
channel= COMChannel
Se o protocolo COM for usado, comChannel especificar o canal COM a ser usado na comunicação com o cliente de depuração. Isso pode ser qualquer valor entre 0 e 254, inclusive. Você pode usar uma única porta COM para várias conexões usando números de canal diferentes. (Isso é diferente do uso de portas COM para um cabo de depuração – nessa situação, você não pode usar canais dentro de uma porta COM.)
Se o protocolo SSL ou SPIPE for usado, Protocol especificar o protocolo S-Channel (Canal Seguro). Isso pode ser qualquer uma das cadeias de caracteres tls1, pct1, ssl2 ou ssl3.
Cert
Se o protocolo SSL ou SPIPE for usado, Cert especificar o certificado. Isso pode ser o nome do certificado ou a impressão digital do certificado (a cadeia de caracteres de dígitos hexadecimal fornecidos pelo snapin do certificado). Se a sintaxe certuser=Cert for usada, o depurador procurará o certificado no repositório do sistema (o repositório padrão). Se a sintaxe machuser=Cert for usada, o depurador procurará o certificado no repositório de máquinas. O certificado especificado deve dar suporte à autenticação do servidor.
oculto
Impede que o servidor apareça quando outro depurador exibe todos os servidores ativos.
password=Password
Requer que um cliente forneça a senha especificada para se conectar à sessão de depuração.
de senha pode ser qualquer cadeia de caracteres alfanumérica, com até doze caracteres de comprimento.
Importante
Usar uma senha com protocolo TCP, NPIPE ou COM oferece apenas uma pequena quantidade de proteção, pois a senha não está criptografada. Quando você usa uma senha junto com um protocolo SSL ou SPIPE, a senha é criptografada. Se você quiser estabelecer uma sessão remota mais segura, deverá usar o protocolo SSL ou SPIPE.
ipversion=6
(Ferramentas de depuração para Windows 6.6.07 e somente anteriores) Força o depurador a usar o IP versão 6 em vez da versão 4 ao usar o TCP para se conectar à Internet. No Windows Vista e versões posteriores, o depurador tenta fazer o padrão automático para o IP versão 6, tornando essa opção desnecessária.
-noio
Se o servidor de depuração for criado com a opção -noio, nenhuma entrada ou saída poderá ser feita por meio do próprio servidor. O depurador aceitará apenas a entrada do cliente de depuração (além de qualquer comando inicial ou script de comando especificado pela opção de linha de comando -c). Toda a saída será direcionada para o cliente de depuração. A opção -noio só está disponível com KD, CDB e NTSD. Se o NTSD for usado para o servidor, nenhuma janela de console será criada.
IcfEnable
Faz com que o depurador habilite as conexões de porta necessárias para a comunicação de pipe TCP ou nomeada quando o Firewall de Conexão da Internet estiver ativo. Por padrão, o Firewall de Conexão com a Internet desabilita as portas usadas por esses protocolos. Quando
opções de
Quaisquer parâmetros de linha de comando adicionais podem ser colocados aqui. Consulte Command-Line Opções para obter uma lista completa.
Você pode usar o comando .server para iniciar vários servidores usando diferentes opções de protocolo. Isso permite que diferentes tipos de clientes de depuração ingressem na sessão.
Consulte Também
controlando uma sessão de depuração remota
.endsrv