Kernel32 RtlMoveMemory
Declare Sub MemCopy Lib "Kernel32" Alias _
"RtlMoveMemory" (dest As Any, src As Any, _
ByVal numbytes As Long)
Sub test
Dim p(1 To 10) As Integer
Dim i As Integer
For i = 1 To 10
p(i) = i
Next
MemCopy p(5), p(1), 4
End Sub
Сейчас эта функция не выполняется - копирование элементов не происходит (как будто не было вызовов). Ошибок никаких при выполнении кода не возникает. Раньше работал на Access97, теперь Access XP. В чем может быть причина?
В догонку еще один вопрос - как эта функция будет работать, если области источник и получатель перекрываются (например, надо сдвинуть все элементы массива на 1 вправо или влево).
MemCopy p(1),p(2),2*9 ???
Это проделки KasperskyAntiVirus OfficeGuard (он блокирует вызовы Win32API)
Не наступайте на те же грабли :)