Passerelle Ethernet/Serial .net

cs_megamario Messages postés 145 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 14 février 2013 - 12 juil. 2011 à 18:59
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 12 juil. 2011 à 21:46
Bonjour,

J'ai un souci à mon boulot, nous développons encore en VB6 sous XP et nous utilisons des dll et ocx qui date depuis fort longtemps, à l’époque de Win 98 voir même Win95, mais nos clients commence à avoir du Win7. Et malheureusement nos fichiers ne fonctionne plus ou mal sous Win7.

Notamment une dll et un exe crée il y a longtemps qui nous sert à gérer les connexions sur port COM.

J'ai réussi à le faire fonctionné la semaine dernière et à faire une installation à l'arrache sur le PC du client (un petit ePC avec Win7Starter),Ce PC va lui servir de visu pour afficher les paramètres de notre supervision.

Malheureusement cette semaine impossible à le refaire marcher avec mon PC perso (au boulot on à même pas un poste en Win7).

Il faudrait que l'on refasse toutes nos dll, ocx et exe pour les passer en .net. Mais cela ne se fait pas en 1 jour vu le nombres de fichiers.

Dans un 1er temps je recherche un logiciel ou des codes source vb.net ou C#, pour faire une passerelle Ethernet vers PortCOM. la fonction ethernet fonctionnant encore bien. Je l'installerais en local, sur le système.

L'entreprise étant en pleine restructuration, je n'est pas beaucoup de temps actuellement car je suis formé par les personnes qui malheureusement ne sont pas gardées.

Une petite aide serait donc la bienvenue en ces temps difficile, afin que je puisse au moins débloquer la situation de façon temporaire.

merci

6 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
12 juil. 2011 à 19:22
Et ton logiciel exécuté sous Seven mais en mode de compatibilité XP, il ne fonctionne pas ?


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
12 juil. 2011 à 19:29
Bonjour,

A mon travail, on utilises aussi des postes Win7 avec VB6, mais sans connexion à un port COM.
Coté serveur, sur un Win2008, Les ports COMs fonctionnent parfaitement.

As-tu essayé de voir si avec le composant MsCommControl ça passe ?

Sinon pour faire une passerelle, il faut définir un protocole :
- De quoi as-tu besoin (juste les données ou en plus, les broches d'états supplémentaires, RTS, DTS, ...) ?
- Comment initialiser l'échange (Numéro de port, Vitesse, caractéristiques (Parité, stop, ...) ) ?

Car faire une passerelle est très simple, j'en avait fait une "à l'arrache", qui écoutait sur un port TCP puis qui envoyait le tout sur un port COM, mais la seule config (numéro du port) était coté serveur.

Pour la partie TCP : System.Net.Sockets.TcpListener et TcpClient
Pour la partie port COM : System.IO.Ports.SerialPort

Mon site
0
Utilisateur anonyme
12 juil. 2011 à 20:11
Salut,
Tu peux aussi essayer ce Serial / Ethernet gateway.
Je ne l'ai pas testé.
Bonne soirée.
0
cs_megamario Messages postés 145 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 14 février 2013
12 juil. 2011 à 20:26
Bonjour,

Effectivement j'ai besoin de transmettre sur le port COM des données sous forme de texte

Genre

LOGIN/D/DUDULE

A la suite de cette ligne il y a une séparation(j'ai un trou de mémoire sur le type exacte) puis il y a un checksum et enfin un VBCRLF qui clôture la ligne.

Pour les paramètres il me faut effectivement les options classique du port COM: Vitesse,bits d’arrêt, bits de données, parité, etc.. et pourquoi pas les RDS DTS pour plus de compatibilité.

Pour les composant qui attaque le port com, je ne sais même pas quelle outils ils ont utilisé, puisque tout passe par notre dll et exe ancien, je sais qu'il était développer en C++, mais j'en sais pas plus pour le moment.

Je suis dans le service depuis 1 ans à la suite de ma formation de 2 ans pour le BTS IRIS. j'ai déjà imposé .net pour des projets parallèle, n’utilisant pas les fonctions ancestrale.
Par contre je sais que ma collègues qui à fait un logiciel autonome pour ce même client juste pour afficher 3 ou 4 paramètres, a utilisé encore VB6 et donc les fonctions classic de celui_ci donc surement MsCommControl. Et cela marche.


Pour mon cas ce qui me gène le plus c'est que lorsque j'ai installé le logiciel sur le petit ePC il a fallu que je compile je logiciel a partir de Win7, ensuite j'ai crée l'install avec installshield et dans les dépendance il m'a trouvé quelque chose de Win95 qu'il à inséré, ce qu'il ne fait pas depuis WinXP. Et lorsque je voulais lancé mon logiciel après l'avoir installé, celui-ci m'a annoncé plusieurs dll manquante de notre conception. Une fois placé dans System32 plus de souci, mais la rien à faire. je voudrais refaire donc un package propre avec les fameuses dll manquante mais il ne veux rien savoir, il s’installe bien il s'ouvre bien mais impossible de se connecter au PortCOM, pourtant dans les services je vois bien mon exe qui gère le port COM se lancer, mais rien a faire. Dans le programme il gère une exception immédiate comme s'il n'y avait pas de port COM.

Je pense vraiment à un droit d'utilisation ou d’écriture quelque part, vu que nos exe et dll arrivaient malgré tout à fonctionné avec le ePC

Déjà si je veux autorisé l'installation de nos ocx dans VB6, il faut que je démarre VB6 en mode administrateur, si non il m'annonce des erreurs d'activeX et élimine toute mes ocx
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_megamario Messages postés 145 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 14 février 2013
12 juil. 2011 à 20:30
En mode de compatibilité XP cela ne marche pas non plus.

Merci pour le logiciel cela devrais être parfait en plus il est gratuit apparemment
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
12 juil. 2011 à 21:46
Bonjour,

Bien que je comprenne que maintenir l'existant est une priorité, mais VB6 est déjà dépassé depuis quelquesss années.

Sinon, en cas extrême, il est quand même possible de faire un OCX.NET (Composant COM/OLE), je n'ai pas beaucoup testé, mais ça peut être une solution le temps de migrer l'ensemble du projet.

Mon site
0
Rejoignez-nous