cs_lamarine
Messages postés17Date d'inscriptionmardi 20 août 2002StatutMembreDernière intervention31 janvier 2007
-
10 avril 2003 à 13:24
cs_timoun
Messages postés2Date d'inscriptionjeudi 23 décembre 2004StatutMembreDernière intervention 5 janvier 2006
-
11 avril 2007 à 18:04
Bonjour à tous,
J'ai ouvert un port com1 comme suit :
HardLittleGirl
Messages postés3Date d'inscriptionlundi 16 janvier 2006StatutMembreDernière intervention13 avril 2006 19 janv. 2006 à 09:18
salut
je te donne un bout de code pour ouvrir 9 port com avec les controle qui vont bien
API pour faire la pause
Private Declare Function GetTickCount Lib "Kernel32" () As Long 'DLL pour la pause (sans bloquer les autres fonctions)
Private Sub cmdBrochage_Click()
If cmdBrochage.Tag = "" Then
Me.Height = 8300
cmdBrochage.Tag = "BROCHAGE"
cmdBrochage.Caption = "<< Cacher"
Else
Me.Height = 4200
cmdBrochage.Tag = ""
cmdBrochage.Caption = "Brochage >>"
End If
End Sub
Private Sub cmdTester_Click()
'--- si le port existe le mot "Présent" s'affiche
'--- et si en plus il y a présence d'un bouchon, le mot "ECHO" est ajouté
On Local Error GoTo Erreur
Dim i, j As Integer
Screen.MousePointer = vbHourglass
For i = 1 To 9
lblCom(i) = "COM " & i & " : Présent "
MSComm.CommPort = i
MSComm.PortOpen = True
MSComm.Output = "+ ECHO"
xWait (30)
lblCom(MSComm.CommPort) = lblCom(MSComm.CommPort) & MSComm.Input
Next i
Screen.MousePointer = vbNormal
Exit Sub
Erreur:
If Err.Number = 8012 Then 'le port n'est pas ouvert
Resume Next
ElseIf Err.Number = 8005 Then 'le port est déjà ouvert
MSComm.PortOpen = False
Resume
ElseIf Err.Number = 8002 Then 'Numéro de port non valide
lblCom(i) = "COM " & i & " : -"
Resume Next
ElseIf Err.Number = 8018 Then 'opération reconnu uniquement sur port ouvert
Resume Next
End If
Screen.MousePointer = vbNormal
End Sub
Private Sub cmdFermer_Click()
End
End Sub
Private Sub xWait(ByVal MilSecToWait As Long)
'Pour faire une pause (en milisecondes) sans bloquer le systême
Dim lngEndingTime As Long
lngEndingTime = GetTickCount() + (MilSecToWait)
Do While GetTickCount() < lngEndingTime
DoEvents
Loop