Für das Prüfen von COM-Ports zeigen wir Ihnen heute 2 Möglichkeiten. Die erste Möglickkeit versucht durch Öffnen des Ports festzustellen, ob dieser existiert. Dabei werden auch Ports im Netz (Com-Server) erkannt. Alle erkannten COM-Ports werden in einer ListBox ausgegeben. Dim i As Integer Dim F As Integer Dim sCOMParam As String ' Fehlerbehandlung aktivieren On Error Resume Next ' 16 Schnittstellen werden von VB unterstützt For i = 1 To 16 ' String mit COM-Default-Werten sCOMParam = "COM" & CStr(i) & ":9600,n,8,1" ' Versuch den COM-Port zu öffnen F = FreeFile Err.Clear Open sCOMParam For Input As #F ' wenn es jetzt kinen Fehler gibt, ' dann existiert der COM-Port If Err.Number = 0 Then List1.AddItem "COM" + CStr(i) Close #F End If Next i ' Fehlerbehandlung wieder ausschalten On Error Goto 0 Das ganze lässt sich natürlich auch in eine kleine Funktion packen, der man dann als Parameter den zu prüfenden COM-Port übergibt: Public Function COMPort_Exists(ByVal nPort As Integer) As Boolean ' Existsiert eine bestimmte COM-Schnittstelle? Dim F As Integer Dim sCOMParam As String ' Fehlerbehandlung aktivieren On Error Resume Next ' String mit COM-Default-Werten sCOMParam = "COM" & CStr(nPort) & ":9600,n,8,1" ' Versuch den COM-Port zu öffnen F = FreeFile Err.Clear Open sCOMParam For Input As #F ' wenn es jetzt kinen Fehler gibt, ' dann existiert der COM-Port COMPort_Exists = (Err.Number = 0) Close #F ' Fehlerbehandlung wieder ausschalten On Error Goto 0 End Function Aufruf der Funktion: Dim bResult As Boolean bResult = COMPort_Exists(1) 2. Möglichkeit: Dim objWMIService As Object Dim colItems As Object Dim objItem As Object On Error Resume Next Set objWMIService = GetObject("winmgmts:\\.\root\cimv2") Set colItems = objWMIService.ExecQuery("Select * from Win32_SerialPort", , 48) For Each objItem In colItems MsgText1 = "Port: " + vbTab + objItem.DeviceID MsgText2 = "Typ: " + vbTab + objItem.ProviderType MsgText3 = "Max. BaudRate: " + vbTab + objItem.MaxBaudRate MsgBox MsgText1 + vbCrLf + MsgText2 + vbCrLf + MsgText3 Next On Error GoTo 0 Mit dieser Methode lassen sich auch weiter Informationen über hardwareseitig unterstütze Verfahren z.B. X-On/X-Off herausfinden. Dieser Tipp wurde bereits 33.632 mal aufgerufen.
Anzeige
![]() ![]() ![]() (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren [email protected]! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
[email protected] CD Vol.6 ![]() ![]() Geballtes Wissen aus mehr als 8 Jahren [email protected]! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats ![]() Dieter Otter PopUp-Menü wird nicht angezeigt :-( In diesem Tipp verraten wir Ihnen, wie Sie Probleme mit PopUp-Menüs umgehen können, wenn diese unter bestimmten Umständen einfach nicht angezeigt werden. Neu! sevCoolbar 3.0 ![]() Professionelle Toolbars im modernen Design! Mit sevCoolbar erstellen Sie in wenigen Minuten ansprechende und moderne Toolbars und passen diese optimal an das Layout Ihrer Anwendung an (inkl. große Symbolbibliothek) - für VB und MS-Access |
||||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |