![Rank: 8](images/default/star_level3.gif) ![Rank: 8](images/default/star_level3.gif)
- UID
- 872238
|
![](http://images.eccn.com/silabs/silicon_chip_980x60_202203.jpg)
Declare Function TranslateMessage Lib "coredll.dll" (ByVal MSG As String) As Boolean
网上down到的,有关unicode的函数集:
Attribute VB_Name = "modUniCode"
Option Explicit
Public Function MemStringToLong(StringIn As String) As Long
On Error Resume Next
Dim hWorkVal As String
" Convert the String back to Long Integer.
" Converting back to Big Endian format.
Dim i As Long
For i = 4 To 1 Step -1
hWorkVal = hWorkVal & Hex(AscB(MidB(StringIn, i, 1)))
Next i
" Return Long Integer value.
MemStringToLong = CLng("&H" & hWorkVal)
End Function
Public Function LongToMemoryString(ByVal lInputValue As Long) As String
Dim hWorkVal As String
Dim n As Long
Dim i As Long
" Convert to HEX value.
hWorkVal = Hex(lInputValue)
" Check to see if it is not zero.
If hWorkVal <> "0" Then
" Convert to memory storage format (Little Endian).
" For example, 0000A411 would convert to 11A40000.
"
" Place leading zeros in 8 character sequence to
" maintain consistent character count
n = Len(hWorkVal)
If n < 8 Then
hWorkVal = String(8 - n, "0") & hWorkVal
End If
"
" Use ChrB to rebuild Bytes.
For i = 7 To 1 Step -2
LongToMemoryString = LongToMemoryString & _
ChrB(CInt("&H" & Mid(hWorkVal, i, 2)))
Next i
Else
" Just return zeros.
" Use ChrB to build Bytes.
LongToMemoryString = ChrB(CInt("&H00"))
LongToMemoryString = LongToMemoryString & ChrB(CInt("&H00"))
LongToMemoryString = LongToMemoryString & ChrB(CInt("&H00"))
LongToMemoryString = LongToMemoryString & ChrB(CInt("&H00"))
End If
End Function |
|