Bonjour a tous,

J'ai sur mon SI un systeme de programmation de machine industrielles fonctionnant sur se principe :
- des interfaces RS232 sont déportées sur réseau IP, elles sont reliées a des balances, des automates, des étiqueteuses ...
- Des pc industriels interrogent ces ports com ou envoyent des données pour programmer les machines via un serveur ISS sous W2003. Un service tourne sur le serveur pour virtualiser les ports (Modules COM deportés ICPDAS et serveur de COM virtuel VXCOM).
Depuis 5 ans cela fonctionne très très bien, sans aucun accro.

Mais j'ai passé en WIFI une partie des pcs industriels, je les ai remplacé par des pockets sous WINCE. Tout fonctionne bien MAIS :
Le wifi en environnement industriel étant ce qu'il est, il arrive de temps en temps que des trames se perdent, et quant c'est au moment de la lecture ou d'envoye de donnes sur un port série, !!! le port n'est pas fermé, donc inutilisable par la suite ...
Pour des raisons applicatives je ne peu redémarrer le service VXCOM qui gère les ports série ...

COMMENT FERMER UN PORT SERIE QUI EST OUVERT VIA :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
Set PORT = Server.CreateObject("MSCOMMLib.MSComm")
PORT.CommPort = cint(Request.QueryString("PORT"))
PORT.Settings = "9600,N,8,1"
PORT.PortOpen=true
Car : rien n'y fait, ni le redémarrage de ISS, impossible de se connecter sur le port puisqu'il est ouvert, même via un autre routine VB ...

Avez vous une idées ? via process explorer, mais je ne trouve pas le processus, ou via un soft oublié ?

Merci de votre intérêts et de vos conseils.