!bpid
La extensión !bpid solicita que un proceso en el equipo de destino interrumpa en el depurador o solicita que un depurador en modo de usuario se conecte a un proceso en el equipo de destino.
!bpid [Options] PID
Parámetros
Opción
Controla las actividades adicionales de este comando.
En la tabla siguiente se describen los valores válidos de Option.
-a |
Conecta un nuevo depurador en modo de usuario al proceso especificado por PID. El depurador en modo de usuario se ejecuta en la máquina de destino. |
-s |
Agrega un punto de interrupción que se produce en el proceso de WinLogon inmediatamente antes de la interrupción en el proceso en modo de usuario especificado por PID. Esto permite al usuario comprobar la solicitud antes de intentar la acción. |
-w |
Almacena la solicitud en la memoria del equipo de destino. Después, el sistema de destino puede repetir la solicitud, pero esto no suele ser necesario. |
PID
Especifica el identificador del proceso deseado en el equipo de destino. Si lo usa para controlar un depurador en modo de usuario en el equipo de destino, PID debe ser el identificador de proceso de la aplicación de destino, no del depurador en modo de usuario. (Dado que los identificadores de proceso suelen aparecer en formato decimal, es posible que tenga que añadir el prefijo 0n o convertirlo a formato hexadecimal).
Archivo DLL
Kdexts.dll
Este comando de extensión se admite en equipos de destino basados en x86 o x64.
Comentarios
Este comando es especialmente útil al redirigir la entrada y salida de un depurador en modo de usuario al depurador de kernel. Hace que la aplicación de destino en modo de usuario entre en el depurador en modo de usuario, que a su vez solicita la entrada del depurador de kernel. Consulte Control del depurador en modo de usuario desde el depurador de kernel para obtener más información.
Si este comando se usa en otra situación, el proceso en modo de usuario llama a DbgBreakPoint. Normalmente, esto interrumpirá directamente en el depurador de kernel.
La opción -s provoca una interrupción en WinLogon justo antes de que se produzca la interrupción en el proceso especificado. Esto resulta útil si desea realizar acciones de depuración en el contexto de proceso de WinLogon. A continuación, se puede usar el comando g (Go) para pasar a la segunda interrupción.
Tenga en cuenta que hay maneras en las que esta extensión puede no ejecutarse:
Falta de recursos. La extensión !bpid inserta un subproceso en el proceso de destino, por lo que el sistema debe tener suficientes recursos para crear un subproceso. El uso de la opción -a requiere aún más recursos del sistema, ya que !bpid -a debe ejecutar una instancia completa de un depurador en el equipo de destino.
El bloqueo del cargador ya está mantenido. Tanto !bpid como !bpid -a requieren que un subproceso se ejecute en el proceso de destino para que se interrumpa en el depurador. Si otro subproceso contiene el bloqueo del cargador, el subproceso !bpid no podrá ejecutarse y es posible que no se produzca una interrupción en el depurador. Por lo tanto, si !bpid produce un error cuando hay suficiente memoria en modo de usuario disponible para el proceso de destino, es posible que se mantenga el bloqueo del cargador.
Falta de permiso. La operación de la extensión !bpid requiere el permiso suficiente para que WinLogon cree un subproceso remoto y conecte un depurador a un proceso determinado.
No hay acceso a ntsd.exe. Si no se encuentra ntsd.exe en una ruta de acceso conocida habitualmente, !bpid no podrá establecer un PID adecuado. Tenga en cuenta que ntsd.exe no se incluye de forma predeterminada con Windows Vista.