begin process at 2012 02 10 22:20:19
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Divers

 > 

Débutants

 > 

Mscomm


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Mscomm

samedi 23 septembre 2006 à 22:05:36 | Mscomm

bentic

Bonsoir,
je me lance dans un utilitaire avec de trés grand  soucis de fonctionnement, vu mon niveau car la prog c un métier. M'enfin, je remercie d'avance la personne qui va comprendre mon problème et me le résoudre. (je ne connais rien a la prog je bidouille avec toute la richesse de ce site, je suis automaticien).
j'ai récupéré et fait tourner a ma façon cette routine pour communiquer avec un automate, via je pense le protocole VT100


Private Sub Form_Load()
MSComm1.PortOpen = True
Dim InBuff As String

         Select Case MSComm1.CommEvent
            Case comEventBreak
            Case comEventCDTO
            Case comEventCTSTO
            Case comEventDSRTO
            Case comEventFrame
            Case comEventOverrun
            Case comEventRxOver
            Case comEventRxParity
            Case comEventTxFull
            Case comEventDCB

        
            Case comEvCD
            Case comEvCTS
            Case comEvDSR
            Case comEvRing
            Case comEvReceive
            Label1.Caption = "Input"
            InBuff = MSComm1.Input
            Case comEvSend
              
            Case comEvEOF
                                          
         End Select

      End Sub

      Private Sub Lbl1_Click()
Dim Buffer As Variant
    MSComm1.ParityReplace = ""
    MSComm1.InputLen = 0
    If MSComm1.PortOpen = True Then
    MSComm1.PortOpen = False
 End If
    MSComm1.PortOpen = True
    Timer1.Enabled = True
    Timer1.Interval = 200
     Buffer = Chr$(48)
     MSComm1.Output = Buffer
     End Sub

Private Sub Lbl10_Click()
Dim Buffer As Variant
MSComm1.ParityReplace = ""
    MSComm1.InputLen = 0
    If MSComm1.PortOpen = True Then
    MSComm1.PortOpen = False
 End If
    MSComm1.PortOpen = True
    Timer1.Enabled = True
    Timer1.Interval = 200
   Buffer = Chr$(72)
   MSComm1.Output = Buffer
End Sub

Ma premier question est:
j'obtiens ça, dans le TextBox
I[HMENU=1  VISU=2
MODIF=3

et de temps en temps
OOXXXXIIIasXXMENU=1
Il faudrait pouvoir supprimer le "I[H "et tout les trucs OOXXXX etc..
Souhait   
MENU=1  VISU=2
MODIF=3
Il y a bien longtemps on ma repondu que qu'il fallait mettre CHR$(27) & "H" Ok mais ou?

Deuxieme question; je pense que les infos tournent en boucle,  comment est-il possible de rafraichir en permanence pour etre toujours au meme endroit au moment de l'ouverture du port com1.

Merci,
 
dimanche 24 septembre 2006 à 13:09:13 | Re : Mscomm

jack

Administrateur CodeS-SourceS
Salut
Ces codes sont des balises de positionnement du curseur ou de formatage de texte.
Je suppose que tu te connectes à un Vax qui tourne sous OpenVMS ou Unix.
"Hyper Terminal" de Windows fait cela très bien.

Sinon, pour supprimer ces codes, il faut pouvoir les détecter.
Il faut donc repérer toutes les combinaisons possibles.
Pour supprimer le bout de chaine --> Replace
Exemple :
ChaineOriginale = "tralala I[HMENU=1 VISU=2"
ChaineASupprimer = "I[H"
ChaineOriginale = Replace(ChaineOriginale, ChaineASupprimer, "")

Tu n'as plus qu'à imaginer un tableau de chaines à supprimer et une boucle qui scanera chaque ligne de texte reçu avec une recherche de chaque chaine à supprimer.

La meilleure méthode serait quand même de connaître exactement la signification de ces balises.
Renseigne-toi sur le type de système d'exploitation de la machine sur laquelle tu te connectes.
Si c'est du DCL de OpenVMS, je pourrais te donner quelques infos.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accroit quand on
dimanche 24 septembre 2006 à 18:55:28 | Re : Mscomm

bentic

Salut
Du peut que je sais il s'agit du protocoleVT100 et les deux balises seraient
 
cursorhome      Move cursor to upper left corner      ^[H
cleareol            Erase to end of current line                ^[K
quand a savoir si c'estun DCL ou OpenVMS je suis incapable de repondre a cette question. Je sais en tout cas que je me suis fait un petit convertisseur RS485/RS232 pour dialoguer avec un EEprom qui se trouve sur l'automate.
J'ai besoin d'aide, je serais ravie de pouvoir repondre a d'autre questions  pouvant solutionner mon  soucis
Merci, 
dimanche 24 septembre 2006 à 19:36:29 | Re : Mscomm

jack

Administrateur CodeS-SourceS
Re
Regarde ce fichier Excel dans lequel j'ai regroupé ces codes VT [ Lien ]
Il faudra analyser ce que tu reçois, mais je pense que ce que tu écris comme un accent circonflexe ^ doit être un code escape Chr(27)

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accroit quand on
dimanche 24 septembre 2006 à 21:08:37 | Re : Mscomm

bentic

Effectivement c'est bien "ESC" .  Le codage serai   CHR$(27) & "H"  Seulement voila, je n'arrive pas a l'inclure dans la routine et si de plus il faut créer un additif je vais tourné en triangle bien longtemps.
J'ai cherché des exemples sur le site mais rien ni fait malgré toutes les sources.
 

dimanche 24 septembre 2006 à 23:17:55 | Re : Mscomm

jack

Administrateur CodeS-SourceS
"Seulement voila, je n'arrive pas a l'inclure dans la routine"   Quel routine ?
Si tu veux utiliser la technique que je t'ai proposé, il suffit de dire que ChaineASupprimer = Chr$(27) & "H" , c'est tout
En cherchant "<Esc>H" dans un moteur de recherche, je suis tombé sur cette page d'info : clique ici

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accroit quand on
lundi 25 septembre 2006 à 00:02:57 | Re : Mscomm

bentic

j'ai passé la soirée a lire et relire c'est deux liens pour comprendre
http://www.microsoft.com/france/msdn/windows/ctlmscommtech.mspx
http://www.microsoft.com/france/msdn/windows/ctlmscomm.mspx
je vais me plongé maintenant sur celui que tu me propose
merci pour ce coup de pouce
lundi 25 septembre 2006 à 00:30:50 | Re : Mscomm

Gally

Membre Club
Bonjour,

Pour pouvoir t'aider a ton programme tu peux te referrer a un de mes codes-sources:

http://www.vbfrance.com/codes/SYSCOM-PRO-VER-BETA-HYPER-TERMINAL_25327.aspx

Ce programme est un herper-terminal et possede unr routine de decodage et d'affichage du VT100 (gestion a 85/90%)

Bonne prog
[Gally Home Corp]
lundi 25 septembre 2006 à 14:25:57 | Re : Mscomm

bentic

Ho la la terrible !

Comme dit Lefèvre dans « les tontons flingueurs », je me prépare à des nuits blanches, des migraines des « nervouse brékdones. Je vais faire le tour de ton SYSComPro car ce que je cherche doit y être. En ayant fait un petit tour, combien cela représente de temps passé pour faire un truc comme ça ?

Merci    
lundi 25 septembre 2006 à 14:42:36 | Re : Mscomm

Gally

Membre Club

Bonjour,

Je ne peux pas vraiment quantifier le temps de dev parce-qu'il y a eu pas mal de test avant. Sinon sa represente pas mal de mois.

Je me suis remis sur SYSCom Pro depuis peu et j'ai déjà apporter quelque modification. Sinon je vais me mettre a finir le mode PlugIn qui pourrait te permettre de developper un plugin et non une source complete et ce en utilisant les fonction de SYSCom Pro.

Sinon pour un prob de comprehention po de problème faut demander

A++
[Gally Home Corp]


1 2

Cette discussion est classée dans : end, case, true, mscomm1, portopen


Répondre à ce message

Sujets en rapport avec ce message

communication VB6.0 et port série [ par melimeli1 ] j'ai téléchargé le programme d'émission et de réception ci dessous et j'ai fait la communication par un cable croisés mais malheureusement la connecti VB6 problème port Com [ par Luc Lejeune ] Bonjour, Je développe une application en Visual Basic 6 utilisant le port série de mon PC. Mais j'ai des soucis lors de l'ouverture de mon port com. P problème d'affichage du méssage reçu par le modem sur un TextBox [ par hawish ] Bonjour je suis débutante en VB 6.0 s'il vous plaît je voudrais afficher chaque message reçu dans mon modem sur le PC Je programme en Visual Basic 6 Boucle While sans perdre la main [ par Jeromedu79 ] Bonjour, Depuis 2 jours, je cherche à exécuté une boucle while sans perdre la main. Je m'explique : Voici mon code [code=vb]Public Class boucle [Catégorie encore modifiée VB6 -> VBA] Bug récupération de valeurs :O [ par shinrei69 ] Bonjour bonjour, j'ai un petit problème de récupération de données via une balance "sartorius". Mon code ne me permet pas de récupérer les valeurs com Problemes avec les keystates [ par jx53 ] salut, jai ici un code dans un timer qui détecte l'appuis de la touche "x" et qui avec sa change le text d'un label et met a true une variable bool qu Background worker sur form differente. [ par Sentynel ] Bonjour à tous, J'ai un soucis avec mon background worker. J'ai ma form principal (mainform) qui contien une listbox avec des items. Lorsque l'on cli [Catégorie modifiée VB6 -> VBA] Problème évènement déclencheur macro [ par jeremla ] Bonjour, Je cherche une solution avec ma macro pour que celle-ci se lance automatiquement à chaque changement d'état de ma colonne B ou A. J'ai essa moteur pas à pas [ par imadsys ] salut tout le monde je suis entrain de préparer mon PFE [b]thème[/b]: commande d'un moteur pas à pas bipolaire par vb via port parallèle [b]probl [Catégorie modifiée VB6 --> VBA] Lier les ComboBox? [ par kekedepau ] Bonsoir, Je connaissais le site mais pas tout en détail. Je ne sais si j'ai bien posté dans la bonne catégorie. J'espère que vous allez pouvoir m'aid


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 11,653 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales