Portmon pour Windows v3.03

Par Mark Russinovich

Date de publication : 12 janvier 2012

DownloadTélécharger Portmon(226 Ko)
Exécutez maintenant à partir de Sysinternals Live.

Présentation

Portmon est un utilitaire qui surveille et affiche toutes les activités des ports série et parallèle sur un système. Il dispose de fonctionnalités de filtrage et de recherche avancées qui en font un outil puissant pour explorer le fonctionnement de Windows, voir comment les applications utilisent les ports ou suivre les problèmes dans les configurations système ou d’application.

Portmon 3.x

La version 3.x de Portmon marque l’introduction d’un certain nombre de fonctionnalités puissantes.

  • Monitoring à distance : capturez la sortie de débogage en mode noyau et/ou Win32 à partir de n’importe quel ordinateur accessible via TCP/IP, même sur Internet. Vous pouvez surveiller plusieurs ordinateurs distants simultanément. Portmon installera même son logiciel client lui-même si vous l’exécutez sur un système Windows NT/2K et que vous capturez à partir d’un autre système Windows NT/2K dans le même voisinage réseau.
  • Listes de filtres les plus récents :Portmon a été étendu avec de puissantes fonctionnalités de filtrage et il mémorise vos sélections de filtre les plus récentes, avec une interface qui facilite leur sélection.
  • Copie du presse-papiers : sélectionnez plusieurs lignes dans la fenêtre de sortie et copiez leur contenu dans le presse-papiers.
  • Surbrillance : mettez en surbrillance la sortie de débogage qui correspond à votre filtre de mise en surbrillance, et personnalisez même les couleurs de mise en surbrillance.
  • Journal à fichier : écrivez la sortie de débogage dans un fichier en cours de capture.
  • Impression : imprimez tout ou partie de la sortie de débogage capturée sur une imprimante.
  • Charge utile à fichier unique :Portmon est maintenant implémenté en tant que fichier unique.

Le fichier d’aide en ligne décrit en détail toutes ces fonctionnalités, et bien plus encore.

PortMon screenshot

Installation et utilisation

Exécutez simplement le fichier programme Portmon (portmon.exe) et Portmon commencera immédiatement à capturer la sortie de débogage. Pour exécuter Portmon sur Windows 95, vous devez obtenir la mise à jour WinSock2 de Microsoft. Notez que si vous exécutez Portmon sur Windows NT/2K, portmon.exe doit se trouver sur un lecteur non réseau et vous devez disposer de privilèges administratifs. Les menus, les touches d’accès rapide et les boutons de barre d’outils peuvent être utilisés pour effacer la fenêtre, enregistrer les données supervisées dans un fichier, effectuer une recherche dans une sortie, modifier la police de la fenêtre, etc. L’aide en ligne décrit toutes les fonctionnalités de Portmon.

Portmon comprend toutes les commandes de contrôle d’E/S (IOCTL) de port série et parallèle et les affiche avec des informations intéressantes concernant leurs paramètres associés. Pour les demandes de lecture et d’écriture , Portmon affiche les premières douzaines d’octets de la mémoire tampon, en utilisant « . » pour représenter les caractères non imprimables. L’option de menu Afficher hexadécimal vous permet de basculer entre la sortie ASCII et la sortie hexadécimale brute des données de la mémoire tampon.

Fonctionnement : WinNT

L’interface utilisateur graphique Portmon est chargée d’identifier les ports série et parallèle. Pour ce faire, il énumère les ports série configurés sous HKEY_LOCAL_MACHINE\Hardware\DeviceMap\SerialComm et les ports parallèle définis sous HKEY_LOCAL_MACHINE\Hardware\DeviceMap\Parallel Ports. Ces clés contiennent les mappages entre les noms de périphériques sur ports série et parallèle et les noms accessibles par Win32.

Lorsque vous sélectionnez un port à surveiller, Portmon envoie une requête à son pilote de périphérique qui inclut le nom NT (par exemple, \device\serial0) qui vous intéresse. Le pilote utilise des API de filtrage standard pour attacher son propre objet de périphérique de filtre à l’objet de périphérique cible. Tout d’abord, il utilise ZwCreateFile pour ouvrir le périphérique cible. Ensuite, il traduit le handle qu’il reçoit de ZwCreateFile en pointeur d’objet de périphérique. Après avoir créé son propre objet de périphérique de filtre qui correspond aux caractéristiques de la cible, le pilote appelle IoAttachDeviceByPointer pour établir le filtre. À partir de ce point, le pilote Portmon verra toutes les requêtes destinées au périphérique cible.

Portmon a une connaissance intégrée de tous les IOCTL de port série et parallèle standard, qui sont la principale façon dont les applications et les pilotes configurent et lisent les informations de statut à partir des ports. Les IOCTL sont définis dans le fichier DDK \ddk\src\comm\inc\ntddser.h et \ddk\src\comm\inc\ntddpar.h, et certains sont documentés dans le DDK.

Fonctionnement : Windows 95 et 98

Sur Windows 95 et 98, l’interface utilisateur graphique Portmon s’appuie sur un VxD chargé dynamiquement pour capturer l’activité série et parallèle. Le pilote de périphérique Windows VCOMM (Communications virtuelles) sert d’interface aux périphériques parallèle et série, de sorte que les applications qui accèdent aux ports utilisent indirectement ses services. Le VxD Portmon utilise le raccordement de service VxD standard pour intercepter tous les accès aux fonctions de VCOMM. Comme son pilote de périphérique NT, le VxD Portmon interprète les demandes pour les afficher dans un format convivial. Sur Windows 95 et 98, Portmon surveille tous les ports afin qu’il n’y ait pas de sélection de port comme sur NT.

DownloadTélécharger Portmon(226 Ko)

Exécuter maintenant à partir de Sysinternals Live.