谢谢
谢谢
2007-10-12 15:28
2007-10-12 15:38
2007-10-12 15:43
2007-10-12 15:54
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Dim Sourcearray(200) As Byte
Private Sub Command1_Click()
Dim FileHeader(200) As Byte
Dim pStreamBuf As Long, mLength As Long
mLength = 40
pStreamBuf = VarPtr(Sourcearray(0))
Call CopyMemory(FileHeader(0),byval pStreamBuf, mLength)
Dim i As Long
For i = 0 To 40
Debug.Print FileHeader(i)
Next
End Sub
Private Sub Form_Load()
Dim i As Long
For i = 0 To 200
Sourcearray(i) = i
Next
End Sub
CopyMemory可以实现,看看吧!
[此贴子已经被作者于2007-10-12 16:24:01编辑过]

2007-10-12 16:11
2007-10-12 16:55
2007-10-12 17:11
他只问有没有!没有问好不好!

对头

2007-10-12 17:18
2007-10-12 18:09
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Dim Sourcearray(200) As Byte
Private Sub Command1_Click()
Dim FileHeader(200) As Byte
Dim pStreamBuf As Long, mLength As Long
mLength = 40
pStreamBuf = VarPtr(Sourcearray(0))
Call CopyMemory(FileHeader(0),byval pStreamBuf, mLength)
Dim i As Long
For i = 0 To 40
Debug.Print FileHeader(i)
Next
End Sub
Private Sub Form_Load()
Dim i As Long
For i = 0 To 200
Sourcearray(i) = i
Next
End Sub
CopyMemory可以实现,看看吧!
这样的话,如果下标没控制好,岂不是会越出sourcearray的界外???

2007-10-12 18:24