vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 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 - Fortgeschrittene
Re: Quellcode Teil6/8 
Autor: dj.tommy
Datum: 15.06.17 13:12

#Region "Zusatz funktionen"
 
    Private Function BytesToString(ByVal Bytes() As Byte) As String
        Dim i As Integer, Str As String = ""
        For i = 0 To UBound(Bytes)
            If Not Bytes(i) = 0 Then
                Str = Str & Chr(Bytes(i))
            End If
        Next
        Return Str
    End Function
 
    Private Function StringToBytes(ByVal Strings As String) As Byte()
        Dim i As Integer, Byt() As Byte = Nothing
        ReDim Byt(Len(Strings) - 1)
        For i = 0 To Len(Strings) - 1
            Byt(i) = Asc(Mid(Strings, i + 1, 1))
        Next
        Return Byt
    End Function
 
    Private Function StringToSize(ByVal str As String, Optional ByVal SynchSafe _
      As Boolean = True) As Double
        Dim Base As Double
        Base = 256 * (2 ^ CDbl(SynchSafe))
        If Len(str) = 4 Then
            Return CDbl(Asc(Mid(str, 4, 1))) * Base ^ CDbl(Len(str) - 4) + CDbl( _
              Asc(Mid(str, 3, 1))) * Base ^ CDbl(Len(str) - 3) + CDbl(Asc(Mid( _
              str, 2, 1))) * Base ^ CDbl(Len(str) - 2) + CDbl(Asc(Mid(str, 1, _
              1))) * Base ^ CDbl(Len(str) - 1) - 1
        ElseIf Len(str) = 3 Then
            Return CDbl(Asc(Mid(str, 3, 1))) * Base ^ CDbl(Len(str) - 3) + CDbl( _
              Asc(Mid(str, 2, 1))) * Base ^ CDbl(Len(str) - 2) + CDbl(Asc(Mid( _
              str, 1, 1))) * Base ^ CDbl(Len(str) - 1) - 1
        End If
        Return ""
    End Function
 
    Private Function SizeToString(ByVal num As Double, Optional ByVal size As _
      Long = 4, Optional ByVal SynchSafe As Boolean = True) As String
        Dim mTmp As Double
        Dim dTmp As Double
        Dim sTmp As String
        Dim Base As Double
 
        dTmp = num
        sTmp = ""
        Base = 256 * (2 ^ CDbl(SynchSafe))
 
        Do
            mTmp = Fix(dTmp / Base)
            sTmp = Chr(CLng(dTmp - Base * mTmp)) & sTmp
            If mTmp = 0 Then Exit Do
            dTmp = mTmp
        Loop
        If Len(sTmp) > size Then
            SizeToString = Right(sTmp, size)
        Else
            SizeToString = New String(Chr(0), size - Len(sTmp)) & sTmp
        End If
    End Function
 
#End Region
 
#Region "Events"
 
    ''' <summary>
    '''  Gibt den IP-Adresse auf dem Remote Computer zurück, über den eine 
    ' Verbindung hergestellt werden soll, oder legt den Anschluß fest.
    ''' </summary>
    Public Property Paketgröße() As Long
        Get
            Return _Paketgröße
        End Get
        Set(ByVal Value As Long)
            If Status = WinsockStates.Closed Then
                _Paketgröße = Value
            Else
                Throw New Exception("Die Verbindung ist nicht geschlossen," & _
                  "daher kann dieser IP nicht gesetzt werden.")
            End If
        End Set
    End Property
 
    ''' <summary>
    ''' Gibt das Socket-Protokoll zurück oder legt es fest.
    ''' </summary>
    <RefreshProperties(RefreshProperties.All)> _
    Public Property Protokoll() As WinsockProtocol
        Get
            Return _Protokoll
        End Get
        Set(ByVal value As WinsockProtocol)
            If Status <> WinsockStates.Closed Then
                Throw New Exception("Cannot change the protocol while listening" & _
                  "or connected to a remote computer.")
            End If
            _Protokoll = value
        End Set
    End Property
 
    ''' <summary>
    '''  Bindet den Socket an einen bestimmten Anschluß und eine bestimmte 
    ' Netzwerkkarte.
    ''' </summary>
    ''' <param name="Port">Gibt den Anschluß auf dem Remote Computer zurück, 
    ' über den eine Verbindung hergestellt werden soll, oder legt den Anschluß 
    ' fest.</param>
    ''' <param name="IP">Gibt den Anschluß zurück, der auf dem lokalen 
    ' Computer verwendet wird, oder legt den Anschluß fest.</param>
    Public Sub Bind(ByVal Port As Integer, IP As String)
        _LocalIP = IP
        _LocalPort = Port
        Connect()
    End Sub
 
    ''' <summary>
    '''  Gibt die Anzahl der über diese Verbindung empfangenen Bytes zurück.
    ''' </summary>
    Public Function BytesReceived() As Long
        Return _BytesReceived
    End Function
 
    ''' <summary>
    '''Speichert alle zusätzlichen Daten, die Sie für Ihr Programm benötigen.
    ''' </summary>
    Public Property Tag() As String
        Get
            Return _Tag
        End Get
        Set(ByVal Value As String)
            If Status <> WinsockStates.Connected Then
                _Tag = Value
            Else
                Throw New Exception("Can't be connected to a server and change" & _
                  "the remote port.")
            End If
        End Set
    End Property


Beitrag wurde zuletzt am 15.06.17 um 13:13:34 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Mit System.Net.Sockets über Internet verbinden?2.283dj.tommy14.06.17 18:59
Re: Mit System.Net.Sockets über Internet verbinden?1.456sv0001014.06.17 20:03
Re: Mit System.Net.Sockets über Internet verbinden?1.387dj.tommy14.06.17 20:05
Re: Mit System.Net.Sockets über Internet verbinden?1.388sv0001014.06.17 20:36
Re: Quellcode Teil1/81.394dj.tommy15.06.17 13:07
Re: Quellcode Teil2/81.454dj.tommy15.06.17 13:08
Re: Quellcode Teil3/81.324dj.tommy15.06.17 13:09
Re: Quellcode Teil4/81.223dj.tommy15.06.17 13:10
Re: Quellcode Teil5/81.317dj.tommy15.06.17 13:11
Re: Quellcode Teil6/81.225dj.tommy15.06.17 13:12
Re: Quellcode Teil7/81.359dj.tommy15.06.17 13:15
Re: Quellcode Teil8/81.274dj.tommy15.06.17 13:16
Re: Quellcode Teil8/81.370sv0001015.06.17 14:44
Re: Quellcode Teil8/81.243dj.tommy16.06.17 16:18
Re: Quellcode Teil8/81.316sv0001016.06.17 21:30
Re: Quellcode Teil8/81.390dj.tommy18.06.17 18:03
Re: Sockets Empfänger1.478dj.tommy02.07.17 12:14
Re: Sockets Empfänger1.513sv0001002.07.17 17:52
Re: Sockets Empfänger1.283dj.tommy02.07.17 19:02
Re: Sockets Empfänger1.303sv0001003.07.17 05:42
Re: Sockets Empfänger1.313dj.tommy03.07.17 10:32
Re: Sockets Empfänger1.249sv0001003.07.17 17:35
Re: Sockets Empfänger1.349dj.tommy03.07.17 19:35

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