DevTrain Startseite SharePoint Camp ? In 5 Tagen zum SharePoint Profi!  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren



 

Forum: VB.NET | Thema: LSet in VB.NET | Von: G. Guest ( 16.05.2004 16:45)

Hi folgendes Problem. Ich möchte gerne Code von Visual Basic 6.0 nach VB.NET migrieren. Leider gibt es in VB.NET LSet nicht mehr.

Hier mal der VB 6.0 Code :

Private Function Swap_32(n As Long) As Long
Dim TempLong As LongType
Dim OrigBytes As FourByteType
Dim NewBytes As FourByteType

TempLong.l = n
LSet OrigBytes = TempLong
NewBytes.b1 = OrigBytes.b4
NewBytes.b2 = OrigBytes.b3
NewBytes.b3 = OrigBytes.b2
NewBytes.b4 = OrigBytes.b1
LSet TempLong = NewBytes
Swap_32 = TempLong.l
Exit Function
End Function

Private Type LongType
l As Long
End Type

Private Type FourByteType
b1 As Byte
b2 As Byte
b3 As Byte
b4 As Byte
End Type


Hier wird einfach die Reihenfolge der Bytes der Variable n getauscht.

Bis jetzt habe ich keine Methode gefunden das ganze in VB.NET zu realisieren.
Die einzelnen Bytes konnte ich schon in eine Variable füllen mit :

Dim OrigBytes
OrigBytes = BitConverter.GetBytes(n)

Wie ich jetzt allerdings auf jedes der einzelnen 4 Bytes zugreifen kann habe ich nicht herausbekommen.


Betreff Von Datum
Re: LSet in VB.NET
Ok also mit OrigBytes(0), OrigBytes(1) etc bekomme ich wohl zugriff auf die einzelnen Bytes.<br>NewBytes(0) = OrigBytes(3) hat allerdings nicht funktioniert.<br><br>Nun hängt es also daran die ausgelesenen...
G. Guest 16.05.2004 17:08
Re: LSet in VB.NET
Hi,<br>wenn ich es richtig verstanden habe geht es darum zwei Strukturen gleicher Größe Byte weise ineinander zu kopieren. Das setzt voraus, dass man weiß, wie der Compiler die Daten speichert (und das...
Klaas Wedemeyer 17.05.2004 12:17
Re: LSet in VB.NET
Also. Ich habe nun zumindest die eigentliche Aufgabe nämhlich das drehen der Byte Reihenfolge innerhalb der Variablen ändern können. Integer hat bei VB.NET nun die grösse von 32 bit = 4 byte.<br>Jetzt...
G. Guest 17.05.2004 18:29
Re: LSet in VB.NET
Wenn gar nichts anderes geht kann man es natürlich immer über den mathematischen Weg machen:<br><br>dim byte0 = (l ) Mod &H100<br>dim byte1 = (l \&H100 ) Mod &H100<br>dim byte2 = (l \&H10000 )...
Klaas Wedemeyer 18.05.2004 09:53
Re: LSet in VB.NET
Also ich hab die ganze sache gelöst. War dummheit. eigentlich ist das ganze kein problem. wen die lösung interessiert hier der code. Diese Funktion entspricht dem kompletten VB 6.0 Code den ich im...
G. Guest 18.05.2004 11:49

Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!

 Betreff:
 Nachricht: Den Beitrag finden Sie nun unter: http://beta.devtrain.de/foren Die Benutzerdaten und Foreninhalte von beta.devtrain.de und www.devtrain.de sind die selben.
Sie können sich dort sogar per RSS über neue Inhalte informieren lassen.
Bei Problemen bitte direkt Mail an asp [AT] ppedv.de.

 Signatur:

  



Login
Username:


Passwort:






Passwort vergessen?

Building und Connecting Know-how

© Copyright 2003 ppedv AG