Partager via


Exemples de serveur de processus

Supposons qu’une personne exécute une application sur un ordinateur nommé \\BOX17. Cette application rencontre des problèmes, mais le technicien de débogage se trouve sur un autre site.

La première personne configure un serveur de processus à l’aide de DbgSrv sur \\BOX17. L’application cible a un ID de processus de 122. Le protocole TCP est choisi, avec un numéro de port de socket de 1025. Le serveur est démarré avec la commande suivante :

E:\Debugging Tools for Windows> dbgsrv -t tcp:port=1025 

Sur l’autre ordinateur, le technicien démarre WinDbg en tant que client intelligent avec cette commande :

G:\Debugging Tools> windbg -premote tcp:server=BOX17,port=1025 -p 122 

Voici un autre exemple. Dans ce cas, le protocole NPIPE est choisi et CDB est utilisé à la place de WinDbg. Le premier utilisateur choisit un nom de canal. Il peut s’agir de n’importe quelle chaîne alphanumérique dans cet exemple, « AnotherPipe ». Le premier utilisateur ouvre une fenêtre d’invite de commandes avec élévation de privilèges (Exécuter en tant qu’administrateur) et démarre un serveur de débogage en entrant cette commande :

E:\Debugging Tools for Windows> dbgsrv -t npipe:pipe=AnotherPipe

Le technicien est connecté à l’ordinateur client avec un compte qui n’a pas accès à l’ordinateur serveur. Mais le technicien connaît le nom d’utilisateur et le mot de passe d’un compte qui a accès à l’ordinateur serveur. Le nom d’utilisateur de ce compte est Contoso. Le technicien entre la commande suivante :

net use \\BOX17\ipc$ /user:Contoso

Lorsque vous y êtes invité, le technicien entre le mot de passe du compte Contoso.

Le technicien n’étant pas sûr du nom utilisé pour le canal nommé, il interroge BOX17 pour les serveurs de processus :

G:\Debugging Tools> cdb -QR \\BOX17
Servers on \\BOX17:
Debugger Server - npipe:Pipe=MainPipe
Remote Process Server - npipe:Pipe=AnotherPipe

Deux canaux sont affichés. Toutefois, un seul est un serveur de processus. L’autre est un serveur de débogage, et cela ne nous intéresse pas. Par conséquent, AnotherPipe doit être le nom correct. Le technicien entre la commande suivante pour démarrer le client intelligent :

G:\Debugging Tools> cdb -premote npipe:server=BOX17,pipe=AnotherPipe -v sol.exe

Pour obtenir un exemple plus complexe d’utilisation d’un serveur de processus, consultez Symboles au milieu.