.attach (Anexar ao processo)

O comando .attach é anexado a um novo aplicativo de destino.

.attach [-premote RemoteOptions] AttachOptions PID

Parâmetros

RemoteOptions
Especifica um servidor de processo ao qual anexar. As opções são as mesmas da opção de linha de comando -premote . Consulte Ativando um cliente inteligente para obter detalhes da sintaxe.

Attachoptions
Especifica como a anexação deve ser feita. Isso pode incluir qualquer uma das seguintes opções:

-B
Impede que o depurador solicite uma interrupção inicial ao anexar a um processo de destino. Isso pode ser útil se o aplicativo já estiver suspenso ou se você quiser evitar a criação de um thread de interrupção no destino.

-e
Permite que o depurador seja anexado a um processo que já está sendo depurado. Confira Anexar novamente ao Aplicativo de Destino para obter detalhes.

-k
Inicia uma sessão de depuração de kernel local. Consulte Executando a depuração de kernel local para obter detalhes.

-F
Congela todos os threads em todos os aplicativos de destino, exceto no novo destino que está sendo anexado. Esses threads permanecerão congelados até que ocorra uma exceção no processo recém-anexado. Observe que um ponto de interrupção inicial se qualifica como uma exceção. Threads individuais podem ser descongelados usando o comando ~u (Descongelar Thread).

-R

Faz com que o depurador inicie o processo de destino em execução quando ele é anexado a ele. Isso pode ser útil se o aplicativo já estiver suspenso e você quiser que ele retome a execução.

-V
Faz com que o processo especificado seja depurado de forma não invasiva.

PID
Especifica a ID do processo do novo aplicativo de destino.

Ambiente

Item Descrição
Modos somente modo de usuário
Destinos somente depuração dinâmica
Plataformas all

Comentários

Esse comando pode ser usado quando o CDB está inativo ou se já está depurando um ou mais processos. Ele não pode ser usado quando WinDbg está inativo.

Se esse comando for bem-sucedido, o depurador será anexado ao processo especificado na próxima vez que o depurador emitir um comando de execução. Se esse comando for usado várias vezes em uma linha, a execução precisará ser solicitada quantas vezes esse comando tiver sido usado.

Como a execução não é permitida durante a depuração não invasiva, o depurador não é capaz de depurar de forma não invasiva mais de um processo por vez. Isso também significa que o uso do comando .attach -v pode tornar uma sessão de depuração invasiva já existente menos útil.

Vários processos de destino sempre serão executados juntos, a menos que alguns de seus threads estejam congelados ou suspensos.

Se você quiser anexar a um novo processo e congelar todos os destinos existentes, use a opção -f . Por exemplo, você pode estar depurando uma falha em um aplicativo cliente e desejar anexar ao processo do servidor sem permitir que o aplicativo cliente continue em execução.

Se a opção -premote for usada, o novo processo fará parte de um novo sistema. Para obter detalhes, consulte Depurando vários destinos.