Dans mon application C# 2008, j'utilise la fonction SerialPort.GetPortNames() pour récupérer la liste des ports actuellement disponibles. Ce que j'ai remarqué est, quand je branche un périphérique USB, c'est le numéro de port indiqué dans la liste sur mon application et quand je le débranche et actualise la liste, le numéro de port n'est plus là.Comportement SerialPort.GetPortNames()
Une phase de l'application implique la lecture/écriture de données depuis/vers l'appareil en continu. Maintenant, mon attente est, Si je débranche le périphérique pendant l'opération et obtiens la liste actuelle de port en utilisant SerialPort.GetPortNames(), le nom de port ne sera pas là et je peux l'utiliser pour prendre la décision que le périphérique a été débranché.
À ma grande surprise, le nom du port se trouve encore, malgré l'avoir enlevé
Pourquoi le programme comporte comme celui-ci? Le nom du port n'est pas répertorié en mode sans communication. Cela a-t-il quelque chose à voir avec le retrait de l'appareil lorsqu'il communique?
Merci pour les suggestions. On dirait que Windows API est la meilleure solution. Je suis totalement inexpérimenté avec l'utilisation de Windows API. Vous supposez que j'ai de l'expérience en C#, pourriez-vous suggérer un lien d'où j'ai une bonne compréhension de l'utilisation de l'API Windows avec les applications C# 2008. –
http://msdn.microsoft.com/en-us/magazine/cc164123.aspx aidera probablement. Cependant, je n'ai aucune expérience dans ce domaine. –