vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
TOP-Angebot: 17 bzw. 24 Entwickler-Vollversionen zum unschlagbaren Preis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Funktion mit mehreren Rückgabgewerten unterschiedlichen Typs 
Autor: Bibobernie
Datum: 14.09.12 16:33

Hallo

Heute grübel ich über der Frage wie ich mehrere Rückgabewerte einer Funktion am besten händeln könnte. Als beispiel ermittle ich mit folgender Funktion alle freien seriellen Schnittstellen des Pc:

    Public Shared Function GetFreeUsablePorts() As String()
        Dim TestPort As SerialPort = New SerialPort, MyPorts As String()
        Dim ports() As String, port As String, i As Integer = 0
 
        ports = IO.Ports.SerialPort.GetPortNames()          'Ports des Rechners 
        ' ermitteln
        ReDim MyPorts(ports.Length - 1)
        For Each port In ports
            Try
                With TestPort
                    .PortName = port                        'Com 1, 2, ..., n
                    .ReadTimeout = 500                      'ReadTimeout in ms
                    .Open()                                 'Versuchen zu öffnen
                End With
 
            Catch ex As Exception                           'Fehlschlag
 
            Finally                                         
                If TestPort.IsOpen = True Then
                    MyPorts(i) = port
                End If
 
                TestPort.Close()
 
            End Try
            I += 1
        Next port
 
        Return MyPorts
 
    End Function
Die Ports erhalte ich dann als Strings (Com1, Com2 usw) wenn diese nicht gerade belegt sind.

Nun würde ich gern alle Ports ermitteln lassen (also auch belegte) und die Namen mit einem True/False zurückgeben (offen/geschlossen). Ich benötigte also eine Funktion mit zwei Rückgabewerten bzw. einem Typ welcher dies ermöglicht. Prinzipiell würde der Code so ausschauen:

Public Shared Function GetPortStatus() As ????
        Dim TestPort As SerialPort = New SerialPort, Status as ????
        Dim ports() As String, port As String, i As Integer = 0
 
        ports = IO.Ports.SerialPort.GetPortNames()          'Ports des Rechners 
        ' ermitteln
 
        For Each port In ports
            Try
                With TestPort
                    .PortName = port                        'Com 1, 2, ..., n
                    .ReadTimeout = 500                      'ReadTimeout in ms
                    .Open()                                 'Versuchen zu öffnen
                End With
 
            Catch ex As Exception                           'Fehlschlag
 
            Finally 
 
                Status=port   'Namen des Ports Übergeben
 
                If TestPort.IsOpen = True Then  'Status des Ports Übergeben
                    Status = True
                Else
                    Status = False
                End If
 
                TestPort.Close()
            End Try
            i += 1
        Next port
 
        Return Status  'Typ zurückgeben
 
    End Function
 
End Class
Die ???? müssten durch einen entsprechenden Typen ersetzt werden. Weiß aber nicht welcher für eine solche Aufgabe geeignet ist da hier ja sowohl String-Werte als auch Boolsche Werte auftreten. Im Prinzip erhoffe ich mir Später eine Auflistung wie diese:

Com1, True
Com4, False
Com5, True
usw.

Hat jemand einen Tip wie ich dies hinbekommen kann?

Ahnungsloser ahnungsloser...

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Funktion mit mehreren Rückgabgewerten unterschiedlichen Typs2.170Bibobernie14.09.12 16:33
Re: Funktion mit mehreren Rückgabgewerten unterschiedlichen ...1.420ModeratorFZelle14.09.12 20:27
Re: Funktion mit mehreren Rückgabgewerten unterschiedlichen ...1.268Bibobernie15.09.12 16:20
Re: Funktion mit mehreren Rückgabgewerten unterschiedlichen ...1.255keco15.09.12 16:55
Re: Funktion mit mehreren Rückgabgewerten unterschiedlichen ...1.256Bibobernie15.09.12 17:37
Re: Funktion mit mehreren Rückgabgewerten unterschiedlichen ...1.243ModeratorFZelle15.09.12 21:49
Re: Funktion mit mehreren Rückgabgewerten unterschiedlichen ...1.336Bibobernie15.09.12 22:36
Re: Funktion mit mehreren Rückgabgewerten unterschiedlichen ...1.258keco16.09.12 10:20
Re: Funktion mit mehreren Rückgabgewerten unterschiedlichen ...1.242Bibobernie16.09.12 12:42
Re: Funktion mit mehreren Rückgabgewerten unterschiedlichen ...1.297John wars16.09.12 10:06
Re: Funktion mit mehreren Rückgabgewerten unterschiedlichen ...1.284keco16.09.12 10:15
Re: Funktion mit mehreren Rückgabgewerten unterschiedlichen ...1.259John wars16.09.12 17:53

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
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.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel