Surveiller un port COM déjà en cours d'utilisation
Est-il possible de lire à partir d'un port COM déjà en cours d'utilisation sur Windows XP?
Je voudrais voir la communication entre un logiciel et un appareil branché sur un périphérique série. J'ai écrit un petit programme en C# pour surveiller la COM, mais une fois qu'il est en cours d'utilisation par l'autre appareil, il ne sera pas vous permettre de l'ouvrir à nouveau. Comment peut-on contrôler un port COM déjà en cours d'utilisation?
Je suis ouvert à un logiciel tiers.
OriginalL'auteur rross | 2010-05-17
Vous devez vous connecter pour publier un commentaire.
Oui, c'est techniquement possible. Vous aurez besoin d'un pilote de filtre, un pilote de périphérique type d'un composant qui injecte lui-même à l'avance de l'originaire, le pilote de port série. Il obtient une fissure au niveau du pilote Irp avant de les envoyer sur le conducteur habituel.
C'est la technique utilisée par SysInternals' PortMon utilitaire. Cependant, vous ne pouvez pas écrire un tel pilote dans le code C#, le CLR ne peut pas être chargé dans le ring 0. Au moins pas jusqu'à ce que le super-secret de Midori projet voit le jour.
COM pilotes de filtre sont assez communs, découvrez cette une par exemple. Que vous avez à faire quelques recherches sur google pour en trouver un qui a une .NET wrapper.
OriginalL'auteur Hans Passant
PortMon est le classique COM moniteur de port. Il doit être en cours d'exécution avant que le programme ouvre le port COM, mais le contrôle peut être activé/désactivé.
OriginalL'auteur Stephen Cleary
Vous pouvez utiliser Portmon pour Windows pour surveiller l'activité. L'autre manière de faire, c'est avec un peu de matériel et un ordinateur portable. Je ne suis pas sûr de savoir comment vous pouvez contrôler vous-même avec une application en C#. Une fois que vous êtes connecté et essayez de vous connecter à nouveau, il sera déjà en cours d'utilisation.
Également vérifier cela, il est un peu liée, avec une note sur la façon dont PortMon travaux suivants:
La Redirection du Port série ou de Fractionnement de Débordement de Pile
Si vous avez ou pouvez avoir plus qu'un seul port COM, vous pouvez utiliser un coupleur et faire le suivi de l'autre port.
OriginalL'auteur Bratch
com0com peut répondre à vos besoins. Il a travaillé pour moi.
OriginalL'auteur kenny