Rubrik: Variablen/Strings · Sonstiges | VB-Versionen: VB4, VB5, VB6 | 11.02.04 |
HiWord, LoWord und DWord Drei nützliche Funktionen zum Ermitteln von LoWord, HiWord und DWord. | ||
Autor: Dieter Otter | Bewertung: | Views: 17.793 |
www.tools4vb.de | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | kein Beispielprojekt |
Gerade bei der Verwendung von Windows API-Funktionen ist immer wieder die Rede von LoWord, HiWord und DWord. Muss man beispielsweise aus einem DWord-Parameter (Long-Datentyp) den LoWord-Integerwert ermitteln, stellt sich meist die Frage: Wie mach' ich das?
Deshalb möchten wir Ihnen nachfolgend drei nützliche Funktionen vorstellen:
' LoWord aus DWord ermitteln Public Function LoWord(ByVal nDWord As Long) As Long LoWord = CLng("&H" & Left$(Right$("00000000" & Hex$(nDWord), 8), 4)) End Function
' HiWord aus DWord ermitteln Public Function HiWord(ByVal nDWord As Long) As Long HiWord = CLng("&H" & Right$(Right$("00000000" & Hex$(nDWord), 8), 4)) End Function
' DWord aus LoWord und HiWord zusammensetzen Public Function DWord(ByVal nLow As Integer, ByVal nHigh As Integer) As Long Dim sLow As String Dim sHigh As String sLow = String$(4 - Len(Hex$(nLow)), "0") & Hex$(nLow) sHigh = String$(4 - Len(Hex$(nHigh)), "0") & Hex$(nHigh) DWord = CLng("&H" & sLow & sHigh) End Function