Visual BasicでのCopyMemory関数の使用方法
VBでは、CopyMemory 関数を使用して、あるメモリブロックの内容を別のメモリブロックにコピーします。
- API関数は、コードモジュールの先頭に宣言します:
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
- CopyMemory関数を呼び出してメモリブロックをコピーする。
Dim sourceData As Variant
Dim destinationData As Variant
Dim dataSize As Long
' 设置源数据和目标数据
sourceData = "Hello, world!"
dataSize = Len(sourceData)
ReDim destinationData(1 To dataSize)
' 调用CopyMemory函数复制数据
CopyMemory destinationData(1), ByVal StrPtr(sourceData), dataSize
' 打印目标数据
Debug.Print destinationData
例示では、最初にCopyMemory関数を宣言し、次いで、ソースデータ(sourceData)と目標データ(destinationData)の変数を作成します。そして、CopyMemory関数を使ってソースデータを目標データにコピーします。最後に目標データをプリントしてコピーに成功したかどうか検証します。
ご注意: CopyMemory 関数はメモリを直接操作するため、使用時は慎重に行ってください。メモリの解放と割り当てを確実に正しく処理し、メモリリークなどの問題を回避してください。