Compartir a través de


.attach (Asociar al proceso)

El comando .attach se asocia a una nueva aplicación de destino.

.attach [-premote RemoteOptions] AttachOptions PID

Parámetros

RemoteOptions
Especifica un servidor de procesos al que se va a asociar. Las opciones son las mismas que las de la opción -premote de la línea de comandos. Consulte Activación de un cliente inteligente para obtener más información sobre la sintaxis.

AttachOptions
Especifica cómo se va a realizar la asociación. Esto puede incluir cualquiera de las siguientes opciones:

-b
Impide que el depurador solicite un salto inicial al asociarse a un proceso de destino. Esto puede ser útil si la aplicación ya está suspendida o si desea evitar crear un subproceso de interrupción en el destino.

-e
Permite que el depurador se adjunte a un proceso que ya se está depurando. Consulte Volver a asociar a la aplicación de destino para obtener más información.

-k
Inicia una sesión de depuración de kernel local. Consulte Realización de la depuración de kernel local para obtener más información.

-f
Inmoviliza todos los subprocesos de todas las aplicaciones de destino, excepto en el nuevo destino al que se adjunta. Estos subprocesos permanecerán inmovilizados hasta que se produzca una excepción en el proceso recién asociado. Tenga en cuenta que un punto de interrupción inicial se califica como una excepción. Los subprocesos individuales se pueden desenfrar mediante el comando ~u (Unfreeze Thread).

-r

Hace que el depurador inicie el proceso de destino en ejecución cuando se asocia a él. Esto puede ser útil si la aplicación ya está suspendida y desea que se reanude la ejecución.

-v
Hace que el proceso especificado se depura de forma novasiva.

PID
Especifica el identificador de proceso de la nueva aplicación de destino.

Entorno

Elemento Descripción
Modos solo modo de usuario
Destinos solo depuración en vivo
Platforms all

Comentarios

Este comando se puede usar cuando cdb está inactivo o si ya está depurando uno o varios procesos. No se puede usar cuando WinDbg está inactivo.

Si este comando se ejecuta correctamente, el depurador se asociará al proceso especificado la próxima vez que el depurador emite un comando de ejecución. Si este comando se usa varias veces en una fila, la ejecución tendrá que solicitarse tantas veces como se usó este comando.

Dado que no se permite la ejecución durante la depuración novasiva, el depurador no puede depurar de forma novasiva más de un proceso a la vez. Esto también significa que el uso del comando .attach -v puede representar una sesión de depuración invasiva ya existente menos útil.

Varios procesos de destino siempre se ejecutarán juntos, a menos que algunos de sus subprocesos estén inmovilizados o suspendidos.

Si desea asociar a un nuevo proceso e inmovilizar todos los destinos existentes, use la opción -f . Por ejemplo, podría depurar un bloqueo en una aplicación cliente y desea asociarse al proceso de servidor sin permitir que la aplicación cliente continúe ejecutándose.

Si se usa la opción -premote , el nuevo proceso formará parte de un nuevo sistema. Para obtener más información, consulte Depuración de varios destinos.