Private Sub Command1_Click() '读取 Dim bit() As Byte, l As Long Open "c:\xx.dll" For Binary As #1 ReDim bit(LOF(1)) As Byte Get 1, 1, bit Close 1
'查找并替换写入到数组 For l = 0 To UBound(bit) - 1 If bit(l) = &H61 And bit(l + 1) = &H6D Then bit(l) = CLng("&H" & "FF") bit(l + 1) = CLng("&H" & "FF") End If Next
'写入到文件 Open "c:\xx.dll" For Binary As #1 Put 1, 1, bit Close 1 End Sub
If bit(l) = &H61 And bit(l + 1) = &H6D Then 改成你的 B1 A2 If bit(l) = &HB1 And bit(l + 1) = &HA2 Then
你好 要是替换的位数是4位这句怎么写If bit(l) = &HB1 And bit(l + 1) = &HA2 Then
例如 AI B2 C3 D4 替换成 E1 E2 E3 E4
例如 AI B2 C3 D4 替换成 E1 E2 E3 E4依葫芦画瓢,修改查找替换那段代码'查找并替换写入到数组 For l = 0 To UBound(bit) - 3 If bit(l) = &HA1 And bit(l + 1) = &HB2 And bit(l + 2) = &HC3 And bit(l + 3) = &HD4 Then bit(l) = CLng("&H" & "E1") bit(l + 1) = CLng("&H" & "E2") bit(l + 2) = CLng("&H" & "E3") bit(l + 3) = CLng("&H" & "E4") End If Next
'读取
Dim bit() As Byte, l As Long
Open "c:\xx.dll" For Binary As #1
ReDim bit(LOF(1)) As Byte
Get 1, 1, bit
Close 1
'查找并替换写入到数组
For l = 0 To UBound(bit) - 1
If bit(l) = &H61 And bit(l + 1) = &H6D Then
bit(l) = CLng("&H" & "FF")
bit(l + 1) = CLng("&H" & "FF")
End If
Next
'写入到文件
Open "c:\xx.dll" For Binary As #1
Put 1, 1, bit
Close 1
End Sub
For l = 0 To UBound(bit) - 3
If bit(l) = &HA1 And bit(l + 1) = &HB2 And bit(l + 2) = &HC3 And bit(l + 3) = &HD4 Then
bit(l) = CLng("&H" & "E1")
bit(l + 1) = CLng("&H" & "E2")
bit(l + 2) = CLng("&H" & "E3")
bit(l + 3) = CLng("&H" & "E4")
End If
Next