p (passaggio)
Il comando p esegue una singola istruzione o riga di origine e, facoltativamente, visualizza i valori risultanti di tutti i registri e i flag. Quando si verificano chiamate o interrupt di subroutine, vengono considerati come un singolo passaggio.
Modalità utente
[~Thread] p[r] [= StartAddress] [Count] ["Command"]
Modalità kernel
p[r] [= StartAddress] [Count] ["Command"]
Parametri
Filo
Specifica i thread per continuare l'esecuzione. Tutti gli altri thread sono bloccati. Per altre informazioni sulla sintassi, vedere Sintassi dei thread. È possibile specificare thread solo in modalità utente.
r
Attiva e disattiva la visualizzazione di registri e flag. Per impostazione predefinita, vengono visualizzati i registri e i flag. È possibile disabilitare la visualizzazione del registro usando i comandi pr, tr o .prompt_allow -reg. Tutti e tre questi comandi controllano la stessa impostazione ed è possibile usarli per eseguire l'override di qualsiasi uso precedente di questi comandi.
È anche possibile disabilitare la visualizzazione del registro usando il comando l-os. Questa impostazione è separata dagli altri tre comandi. Per controllare quali registri e flag vengono visualizzati, usare il comando rm (Register Mask).
StartAddress
Specifica l'indirizzo in cui deve iniziare l'esecuzione. Se non si usa StartAddress, l'esecuzione inizia con l'istruzione a cui punta il puntatore dell'istruzione. Per altre informazioni sulla sintassi, vedere Sintassi dell'intervallo di indirizzi e dell'intervallo di indirizzi.
Contare
Specifica il numero di istruzioni o righe di origine da eseguire prima dell'arresto. Ogni passaggio viene visualizzato come azione separata nella finestra Comando debugger. Il valore predefinito è uno.
Comando
Specifica un comando del debugger da eseguire dopo l'esecuzione del passaggio. Questo comando viene eseguito prima che vengano visualizzati i risultati p standard. Se si usa anche Count, il comando specificato viene eseguito dopo il completamento di tutte le istruzioni (ma prima che vengano visualizzati i risultati del passaggio finale).
Ambiente
Articolo | Descrizione |
---|---|
Modalità | modalità utente, modalità kernel |
Target | solo debug in tempo reale |
Piattaforme | tutto |
Informazioni aggiuntive
Per altre informazioni sull'esecuzione del comando p e una panoramica dei comandi correlati, vedere Controllo della destinazione.
Osservazioni:
Quando si specifica Count, ogni istruzione viene visualizzata man mano che viene superata.
Se il debugger rileva un'istruzione o un interrupt di chiamata durante l'esecuzione dell'istruzione, la subroutine chiamata verrà eseguita completamente a meno che non venga rilevato un punto di interruzione. Il controllo viene restituito al debugger all'istruzione successiva dopo la chiamata o l'interrupt.
Ogni passaggio esegue una singola istruzione assembly o una singola riga di origine, a seconda che il debugger sia in modalità assembly o in modalità di origine. Usare i comandi l+t e l-t o i pulsanti sulla barra degli strumenti winDbg per passare da una modalità all'altra.
Quando si esegue rapidamente l'istruzione molte volte in WinDbg, le finestre delle informazioni di debug vengono aggiornate dopo ogni passaggio. Se questo aggiornamento causa tempi di risposta più lenti, usare .suspend_ui (Sospendi interfaccia WinDbg) per sospendere temporaneamente l'aggiornamento di queste finestre.