MScomm

FRatvks Messages postés 52 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 2 octobre 2009 - 13 avril 2007 à 19:41
FRatvks Messages postés 52 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 2 octobre 2009 - 17 avril 2007 à 15:35
Bonsoir,

J'ai developpé une petite appli en VB6 qui ouvre et gere deux Mscomm, cette appli fonctionne parfaitement sous 2000 [javascript:Insert_Emoticon('/imgs2/smile_cool.gif'); ] et plante sous un XP Pro SP2 version 2002[javascript:Insert_Emoticon('/imgs2/smile_angry.gif'); ] :

 erreur 8012 "le port n'est as ouvert" dès que je lance le deuxieme port ??  mscomm1(1).portopen=true

Si le lance un port ca marche, si je le ferme pour lancer le second ca marche aussi (et vice-versa) mais pas si je veux les deux actifs ????[javascript:Insert_Emoticon('/imgs2/smile_dead.gif'); ]

Quelqu'un a-t-il deja rencontré ce probleme (qui se produit sur la cible sous XP et non pas sur mon PC de dev qui est sous 2000 )?

Cordialement

7 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
13 avril 2007 à 20:34
plutot étrange comme erreur.

Ton second PC a bien 2 ports physiques de configurés ????

Les numéros des ports que tu tente d'ouvrir sont correct ?

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
14 avril 2007 à 02:51
Salut
Comme le suggère Casy, vérifie bien que tu paramètres correctement ton MSComm indexé avant de lui faire un PortOpen.
Si c'est avec le même numéro de port, par exemple, ou encore un numéro de Port Comm qui n'existe pas sur cette machine.
0
FRatvks Messages postés 52 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 2 octobre 2009
14 avril 2007 à 14:27
Bonjour,

Merci pour vos suggestions, j'ai bien entendu testé avant de poster en mettant les ports en DUR c'est a dire a la creation et non pas a l'execution ( je paramètre ca dans un .ini) pour avoir le nombre de MODEM et les port alloués ce qui me permettra d'ajouter autant de MODEM que necessaire pour l'avenir, le porg est un "serveur de communication pour des equipements electroniques distants).

En mode "DUR" j'ai le meme phénomène, quand le veut ouvir deux  modem l'un apprès l'autre et ca dans n'importe quel ordre , le premier passe bien, le deuxieme envoi cette erreur sur le .portopen=true , ce qui parrait fou c'est que le systeme me dit que le "port n'est pas ouvert " sur cette commande......je sèche !!
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
14 avril 2007 à 14:53
Dans ce cas met nous ton code car tu dois surrement y avoir une erreur dedant.

Il n'y a pas de raison que ça marche pas, à partir du moment que tu as 2 ports de déclarer dans le système Windows que les numéros correspondent au numéro que tu utilise et qu'ils ne sont pas suppérieur à 16, l'objet MsComm ne sait gérer que les ports de 1 à 16

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0

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

Posez votre question
FRatvks Messages postés 52 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 2 octobre 2009
16 avril 2007 à 14:18
Bonjour,

Oui c'est exactement ce que je me dit "il n'a pas de raison" sauf que ce pu##ain de PC me repond toujours la meme erreur

Mon code (c'est une version très "allégée" pour le test qui plante malgre tout)
2 objet Mscomm sur la form + 2 boites text pour mettre le port a ouvrir et 2 boutons pour lancer chaque com
ca marche pour un com au choix mais pas les 2 a la fois sur la cible PC DELL sous XP pro SP2

Private Sub Command1_Click()
    With MSComm1
        .RThreshold = 1
        .RTSEnable = True
        .SThreshold = 0
        .Settings = "115200,n,8,1"
        .Handshaking = comNone
        .CommPort = Text1.Text
        .PortOpen = True
        MsgBox "Port com " & .CommPort & " est ouvert"
    End With
End Sub

Private Sub Command2_Click()

    With MSComm2
        .RThreshold = 1
        .RTSEnable = True
        .SThreshold = 0
        .Settings = "115200,n,8,1"
        .Handshaking = comNone
        .CommPort = Text2.Text
        .PortOpen = True
        MsgBox "Port com " & .CommPort & " est ouvert"
    End With


Si qq a deux modems (ou periph déclaré) sur un XP SP2 pro..... a moins que ce soit un pb lié a DELL ???
je ne sait vraiment plus quoi penser !

Merci pour votre aide
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
16 avril 2007 à 22:45
Moi ça marche bien que ce soit sur des ports physiques ou virtuels.

N'aurais-tu pas par hasard un autre périphérique qui prendrait un port série, un périphérique Bluetooth peut-etre, un écran tactile, un modem RTC, une souris, .....
C'est déjà arrivé qu'un driver de périphérique montant un port série pour dialoguer avec le périf, s'attribuait en même temps la totalité des ports présents sur le PC, rendant de ce fait inutilisable, ceux qui étaient censés etre libre.

Attention aussi au fait que sur les PC récents le port 2 même s'il est visible dans windows, n'est pas cablé. Généralement il abouti sur la carte mère, à un connecteur prevu pour brancher un port infrarouge.
Mais généralement ça n'empeche pas de l'ouvrir.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #
0
FRatvks Messages postés 52 Date d'inscription mercredi 12 mars 2003 Statut Membre Dernière intervention 2 octobre 2009
17 avril 2007 à 15:35
Salut les gars,

Merci pour votre aide, j'ai trouvé le pb !!!!!!!

J'ai installé deux modem ........en PCI  (de marques differentes  dans mon cas)
Et bien windows les installe et les gère très bien ....chacun son driver.... son interuption....son port com ...[javascript:Insert_Emoticon('/imgs2/smile.gif'); ]
mais chacun son tour ! (et surtout pas les deux à la fois [javascript:Insert_Emoticon('/imgs2/smile_angry.gif'); ])

En résumé : tu peux mettre autant de modem PCI que tu veux ( dans la limite du <strike>stock </strike>..du slot disponible) et avoir autant de ligne de tel que tu veux dernière... SAUF que tu en utilise une seule a la fois ...

C'est peut-être pour laisser soufler la bête ou laisser a FT le temps de se reposer  ou pour economiser l'energie et sauver la planète ?

Ciao
0
Rejoignez-nous