📄 modaddcode.bas
字号:
Attribute VB_Name = "ModAddCode"
'********************************************
''' 作者:kylinpoet or 獬独
''''2007-05-14 23:44 初稿
''''2007-05-15 13:32 修改
''''转载请保留作者 声明
'********************************************
Private Const BUF_MAX As Long = 512
Private Type tCode
Buf(0 To BUF_MAX) As Byte 'Opcode 缓冲区
End Type
Public Type tCodeBuf
Code As tCode ';定义包括长度的Opcode结构
nBuf As Long
End Type
Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
(Destination As Any, _
Source As Any, _
ByVal Length As Long)
Public CodeBuf As tCodeBuf '公共变量
Public Sub AddCode(sOps As String)
Dim i As Long
Dim j As Long
With CodeBuf
j = Len(sOps)
Debug.Assert (j Mod 2 = 0)
Debug.Assert (.nBuf + (j \ 2) <= BUF_MAX)
For i = 1 To j Step 2
.Code.Buf(.nBuf) = Val("&H" & Mid$(sOps, i, 2))
.nBuf = .nBuf + 1
Next i
End With
End Sub
'将整型转化为 8长度的字符串
Public Function Hex8(lValue As Long) As String
Dim s As String
s = Hex$(lValue)
Hex8 = String$(8 - Len(s), "0") & s
End Function
Function ReverseBytes(pVal As String) As String
Dim pTemp As String
For x = Len(pVal) - 1 To 1 Step -2
pTemp = pTemp & Mid(pVal, x, 2)
Next
'每个字节为 8 长度 不足补 0
ReverseBytes = pTemp & String(8 - Len(pTemp), "0")
End Function
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -