vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

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

VB.NET - Ein- und Umsteiger
Re: Bytes in Structure einordnen 
Autor: CodenameReese
Datum: 15.01.10 17:21

Danke erstmal!
Genau das meinte ich mit "Ich glaub ich bin auf dem falschen Weg" *auch wenn er nicht ganz so falsch war* Weil die Lösung von "Drapondur" gefällt mir eindeutig besser
Aber zwei Fragen hätte ich dazu noch^^ Erstens zu dem Array.Copy... Wie mach ich das wenn ich mehrere Byte-Arrays hintereinander habe? Weil ich muss ja nirgends einen Startpunkt angeben (für den Kopiervorgang wird ja nur die Länge benötigt!?) Und zweitens wie gebe ich diese Byte-Array aus? Hab es schon mit "System.Text.Encoding.UTF8/ASCII.GetString" versucht dabei bekomm ich aber nur komische Zeichen^^
Hier mal wieder ein Beispielcode:
Public Class Form1
 
    Private Const Port As Integer = 12345
    Private Packet As Test
 
    Private Structure Test
 
        Dim Var1() As Byte
        Dim Var2() As Byte
        Dim Var3() As Byte
        Dim Var4 As Byte
        Dim Var5 As Single
        Dim Var6 As Long
 
    End Structure
 
    Private Sub StartListener()
 
        ReDim Packet.Var1(3)
        ReDim Packet.Var2(3)
        ReDim Packet.Var3(1)
 
        Dim Done As Boolean = False
        Dim Listener As New UdpClient(Port)
        Dim EndPoint As New IPEndPoint(IPAddress.Any, Port)
 
        Dim Pt As Integer
 
        Try
 
            While Not Done
 
                Dim Data As Byte() = Listener.Receive(EndPoint)
 
                Pt = 0
 
                Array.Copy(Data, Packet.Var1, Packet.Var1.Length)
                Pt += Packet.Var1.Length
                Array.Copy(Data, Packet.Var2, Packet.Var2.Length)
                Pt += Packet.Var2.Length
                Array.Copy(Data, Packet.Var3, Packet.Var3.Length)
                Pt += Packet.Var3.Length
 
                Packet.Var4 = Data(Pt)
                Pt += 1
 
 
                Packet.Var5 = BitConverter.ToSingle(Data, Pt)
                Pt += 4
                Packet.Var6 = BitConverter.ToInt64(Data, Pt)
                Pt += 8
 
                MsgBox(Encoding.ASCII.GetString(Packet.Var1, 0, _
                  Packet.Var1.Length)
 
            End While
 
        Catch ex As Exception
            MsgBox(ex.Message)
        Finally
            Listener.Close()
        End Try
 
    End Sub
End Class
MfG Reese
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Bytes in Structure einordnen2.653CodenameReese14.01.10 22:54
Re: Bytes in Structure einordnen1.762Drapondur15.01.10 03:10
Re: Bytes in Structure einordnen1.724Manfred X15.01.10 04:55
Re: Bytes in Structure einordnen1.744CodenameReese15.01.10 17:21
Re: Bytes in Structure einordnen1.803Manfred X15.01.10 18:13
Re: Bytes in Structure einordnen1.727CodenameReese17.01.10 19:28
Re: Bytes in Structure einordnen1.815CodenameReese19.01.10 11:25
Re: Bytes in Structure einordnen1.654ModeratorDaveS19.01.10 11:29
Re: Bytes in Structure einordnen1.706CodenameReese19.01.10 12:06

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-2025 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