Attivazione di un client di debug

Dopo aver attivato il server di debug, è possibile avviare un client di debug in un altro computer e connettersi alla sessione di debug.

Esistono due modi per avviare un client di debug: usando l'opzione della riga di comando -remote o tramite l'interfaccia grafica WinDbg.

Il protocollo del client deve corrispondere al protocollo del server. La sintassi generale per l'avvio di un client di debug dipende dal protocollo usato. È possibile scegliere tra le seguenti opzioni:

Debugger -remote npipe:server=Server,pipe=PipeName[,password=Password] 

Debugger -remote tcp:server=Server,port=Socket[,password=Password][,ipversion=6] 

Debugger -remote tcp:clicon=Server,port=Socket[,password=Password][,ipversion=6] 

Debugger -remote com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password] 

Debugger -remote spipe:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,pipe=PipeName[,password=Password] 

Debugger -remote ssl:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,port=Socket[,password=Password] 

Debugger -remote ssl:proto=Protocol,{certuser=Cert|machuser=Cert},clicon=Server,port=Socket[,password=Password] 

Per usare l'interfaccia grafica per connettersi a una sessione di debug remoto, WinDbg deve essere in modalità inattiva. Deve essere stato avviato senza parametri della riga di comando oppure deve aver terminato la sessione di debug precedente. Selezionare il file | Connettersi al comando di menu Sessione remota oppure premere il tasto di scelta rapida CTRL+R. Quando viene visualizzata la finestra di dialogo Connetti a sessione debugger remoto, immettere una delle stringhe seguenti nella casella di testo Stringa di connessione :

npipe:server=Server,pipe=PipeName[,password=Password] 

tcp:server=Server,port=Socket[,password=Password][,ipversion=6] 

tcp:clicon=Server,port=Socket[,password=Password][,ipversion=6] 

com:port=COMPort,baud=BaudRate,channel=COMChannel[,password=Password] 

spipe:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,pipe=PipeName[,password=Password] 

ssl:proto=Protocol,{certuser=Cert|machuser=Cert},server=Server,port=Socket[,password=Password] 

ssl:proto=Protocol,{certuser=Cert|machuser=Cert},clicon=Server,port=Socket[,password=Password] 

In alternativa, è possibile usare il pulsante Sfoglia per individuare i server di debug attivi.

I parametri nei comandi precedenti hanno i valori possibili seguenti:

Debugger
Questo non deve essere lo stesso debugger usato dal client di debug: WinDbg, KD e CDB sono tutti intercambiabili ai fini del debug remoto tramite il debugger.

Server
Si tratta del nome di rete o dell'indirizzo IP del computer in cui è stato creato il server di debug. Le due barre rovesciata iniziali (\) sono facoltative nella riga di comando, ma non sono consentite nella finestra di dialogo WinDbg.

pipe= PipeName
Se viene usato il protocollo NPIPE o SPIPE, PipeName è il nome assegnato alla pipe al momento della creazione del server.

Se non si è connessi al computer client con un account che ha accesso al computer server, è necessario specificare un nome utente e una password. Nel computer client, in una finestra del prompt dei comandi, immettere il comando seguente.

net use \\Server\ipc$ /user:UserName

dove Server è il nome del computer server e UserName è il nome di un account che ha accesso al computer server.

Quando richiesto, immettere la password per UserName.

Al termine di questo comando, è possibile attivare un client di debug usando l'opzione -remote della riga di comando o tramite l'interfaccia grafica WinDbg.

Nota Potrebbe essere necessario abilitare la condivisione di file e stampanti nel computer server. In Pannello di controllo passare a Rete e Rete Internet > e Centro> condivisione Impostazioni avanzate di condivisione. Selezionare Attiva condivisione file e stampanti.

port= Presa
Se viene usato il protocollo TCP o SSL, Socket è lo stesso numero di porta socket utilizzato al momento della creazione del server.

clicon
Specifica che il server di debug tenterà di connettersi al client tramite una connessione inversa. Il client deve usare clicon se e solo se il server utilizza clicon. Nella maggior parte dei casi, il client di debug viene avviato prima del server di debug quando viene usata una connessione inversa.

port= Comportarsi
Se viene utilizzato il protocollo COM, COMPort specifica la porta COM da utilizzare. Il prefisso "COM" è facoltativo, ad esempio "com2" e "2" sono accettabili.

baud= BaudRate
Se viene usato il protocollo COM, BaudRate deve corrispondere alla velocità di baud scelta al momento della creazione del server.

channel= COMChannel
Se viene usato il protocollo COM, COMChannel deve corrispondere al numero di canale scelto al momento della creazione del server.

proto= Protocollo
Se si usa il protocollo SSL o SPIPE, il protocollo deve corrispondere al protocollo sicuro usato al momento della creazione del server.

Cert
Se si usa il protocollo SSL o SPIPE, è consigliabile usare il parametro certuser=Cert o routeser= Cert usato al momento della creazione del server.

password= Parola d’ordine
Se è stata usata una password al momento della creazione del server, è necessario specificare Password per creare il client di debug. Deve corrispondere alla password originale. Per le password viene fatta distinzione tra maiuscole e minuscole. Se viene specificata la password errata, il messaggio di errore specifica "Errore 0x80004005". Le password devono avere una lunghezza inferiore o inferiore a dodici caratteri.

ipversion=6
(Solo strumenti di debug per Windows 6.6.07 e versioni precedenti) Forza il debugger a usare IP versione 6 anziché la versione 4 quando si usa TCP per connettersi a Internet. In Windows Vista e versioni successive il debugger tenta di impostare automaticamente l'impostazione predefinita su IP versione 6, rendendo questa opzione non necessaria.

Le opzioni della riga di comando usate per avviare nuove sessioni di debug (ad esempio -p) non possono essere usate dal client di debug, ma solo dal server. Le opzioni di configurazione (ad esempio -n) funzioneranno dal client o dal server.