Condividi tramite


Visualizzazione e modifica di registri in WinDbg (versione classica)

I registri sono piccole unità di memoria volatile che si trovano nella CPU. Molti registri sono dedicati a usi specifici e altri registri sono disponibili per le applicazioni in modalità utente da usare. I processori basati su x86 e x64 hanno raccolte diverse di registri disponibili. Per altre informazioni sui registri in ogni processore, vedere Architettura del processore.

In WinDbg è possibile visualizzare e modificare i registri immettendo i comandi, usando la finestra Registri o usando la finestra Espressioni di controllo.

Comandi

È possibile visualizzare e modificare i registri immettendo il comando r (Registri) nella finestra Di comando del debugger. È possibile personalizzare la visualizzazione usando diverse opzioni o il comando rm (Register Mask).

I registri vengono inoltre visualizzati automaticamente ogni volta che il bersaglio si arresta. Se si sta eseguendo il debug del codice con i comandi p (passo) o t (traccia), viene visualizzato un registro a ogni passo. Per arrestare la visualizzazione, usare l'opzione r quando si usano questi comandi.

In un processore basato su x86, l'opzione r controlla anche diversi registri a un bit noti come flag. Per modificare questi flag, usare una sintassi leggermente diversa rispetto alla modifica dei registri regolari. Per altre informazioni su questi flag e una spiegazione di questa sintassi, vedere Flag x86.

Finestra dei Registri

Apertura della finestra Registri

Per aprire o passare alla finestra Registri, scegliere Registri dal menu Visualizza . È anche possibile premere ALT+4 o selezionare il pulsante Registra sulla barra degli strumenti. ALT+MAIUSC+4 chiude la finestra Registri.

La schermata seguente mostra un esempio di finestra Registri.

Screenshot della finestra

La finestra Registri contiene due colonne. La colonna Reg elenca tutti i registri per il processore di destinazione. Nella colonna Valore viene visualizzato il valore corrente di ogni registro. Questa finestra contiene anche un pulsante Personalizza sulla barra degli strumenti che apre la finestra di dialogo Personalizza elenco registri .

Uso della finestra Registri

Nella finestra Registri è possibile eseguire le operazioni seguenti:

  • Nella colonna Valore viene visualizzato il valore corrente di ogni registro. Il valore del registro modificato più di recente viene visualizzato in testo rosso.

    • Per immettere un nuovo valore, fare doppio clic su una cella Valore e quindi digitare un nuovo valore o modificare il valore precedente. I comandi taglia, copia e incolla sono disponibili per la modifica.
    • Per salvare il nuovo valore, premere INVIO.
    • Per rimuovere il nuovo valore, premere ESC.
    • Se si digita un valore non valido, il valore precedente verrà nuovamente visualizzato quando si preme INVIO.
  • I valori di registro vengono visualizzati nel file radix corrente ed è necessario digitare nuovi valori nello stesso file radix. Per modificare la radice corrente, usare il comando n (Imposta base numeri) nella finestra di comando del debugger.

  • In modalità utente, nella finestra Registri vengono visualizzati i registri associati al thread corrente. Per altre informazioni sul thread corrente, vedere Controllo di processi e thread.

  • In modalità kernel, nella finestra Registri vengono visualizzati i registri associati al contesto di registro corrente. È possibile impostare il contesto del registro in modo che corrisponda a un thread, un record di contesto o un frame trap specifico. Vengono visualizzati solo i registri più importanti per il contesto di registro specificato; non è possibile modificare i valori.

La finestra Registri dispone di una barra degli strumenti che contiene un pulsante Personalizza e include un menu di scelta rapida con comandi aggiuntivi. Per accedere al menu, selezionare e tenere premuto (fare clic con il pulsante destro del mouse) sulla barra del titolo o selezionare l'icona accanto all'angolo superiore destro della finestra (screenshot dell'icona del pulsante per visualizzare il menu di scelta rapida della finestra Registri in WinDbg).

  • (Barra degli strumenti e menu) Personalizza apre la finestra di dialogo Personalizza elenco registri , descritta nella sezione seguente all'interno di questo argomento.

  • (solo menu) La barra degli strumenti attiva e disattiva la barra degli strumenti.

  • (solo menu) Dock o Undock fa sì che la finestra entri o lasci lo stato ancorato.

  • (solo menu) Passare al nuovo dock chiude la finestra Registri e la apre in un nuovo dock.

  • (solo menu) Impostare come destinazione di tabulazione per il tipo di finestra non è disponibile per la finestra Registri. Questa opzione è disponibile solo per le finestre Origine o Memoria.

  • (solo menu) Sempre flottante fa sì che la finestra rimanga fluttuante anche se viene trascinata in una posizione di docking.

  • (Solo menu) Lo spostamento con frame causa lo spostamento della finestra quando il frame WinDbg viene spostato, anche se la finestra è sganciata.

  • (solo menu) La Guida apre questo argomento nella documentazione relativa agli strumenti di debug per Windows.

  • (solo menu) Chiudi chiude questa finestra.

Finestra di dialogo Personalizza elenco registri

Per modificare l'elenco dei registri visualizzati, selezionare il pulsante Personalizza . Verrà visualizzata la finestra di dialogo Personalizza elenco registri .

In questa finestra di dialogo è possibile modificare l'elenco dei registri per modificare l'ordine in cui vengono visualizzati i registri. In realtà non è possibile eliminare un registro dall'elenco. In caso affermativo, verrà nuovamente visualizzato alla fine. Deve essere presente uno spazio tra i nomi dei registri.

Se si seleziona prima la casella di controllo Visualizza valori di registro modificati , il registro i cui valori sono stati modificati più di recente viene visualizzato nella parte superiore.

Se si seleziona la casella di controllo Non visualizzare sottoregistratori , i sottoregistratori non vengono visualizzati. Ad esempio, eax verrà visualizzato, ma non ax, ah o al.

Selezionare OK per salvare le modifiche o Annulla per annullare le modifiche.

Se si esegue il debug di un computer multiprocessore con più di un tipo di processore, WinDbg archivia le impostazioni di personalizzazione per ogni tipo di processore separatamente. Questa separazione consente di personalizzare simultaneamente la visualizzazione dei registri di ogni processore.

Finestra di Osservazione

In WinDbg è possibile usare la finestra Osservazione per visualizzare i registri. Non è possibile utilizzare la finestra di monitoraggio per modificare i valori dei registri.

Per aprire la finestra Watch, scegliere Watch dal menu Visualizza. È anche possibile premere ALT+2 o selezionare il pulsante Espressione di controllo sulla barra degli strumenti: Screenshot del pulsante Espressione di controllo in WinDbg.

La schermata seguente mostra un esempio di finestra Osservazione.

Screenshot della finestra Osserva in WinDbg.

Vedere anche

Per altre informazioni sul contesto di registrazione e altre impostazioni di contesto, vedere Modifica dei contesti.