.
Estos parametros son los que debes pasar en el API CopyMemory (en la liga que se supone que te leiste TODO hay ejemplos):
...
void CopyMemory(
__in PVOID Destination,
__in const VOID *Source,
__in SIZE_T Length
);
...
Más info:
http://msdn.microsoft.com/en-us/library/windows/desktop/aa366535%28v=vs.85%29.aspx
Creo que no te lo leiste todo como has mencionado...
http://foro.elhacker.net/programacion_visual_basic/help_invoke_internetreadfile_api-t343917.0.html;msg1681569#msg1681569mas explicitamente...
...
Call lCallApiByName("wininet", "InternetReadFile", hFile, VarPtr(bBuffer(0)), 1, VarPtr(Ret))
...
BOOL InternetReadFile(
__in HINTERNET hFile,
__out LPVOID lpBuffer,
__in DWORD dwNumberOfBytesToRead,
__out LPDWORD lpdwNumberOfBytesRead
);
Más info de la api:
http://msdn.microsoft.com/en-us/library/windows/desktop/aa385103%28v=vs.85%29.aspxNOTA: no es necesario que sepas C/C++ solo necesitas leer la MSDN y saber que pasar en dichos parametros...
Te dejo un ejemplo más:
GetCursorPos
BOOL WINAPI GetCursorPos(
__out LPPOINT lpPoint
);
lee la descripcion aqui en la MSDN
http://msdn.microsoft.com/en-us/library/windows/desktop/ms648390%28v=vs.85%29.aspxpara saber que invocar te vas al recuadro
Requirements hay revisas la libreria... en este caso es User32.dll y no presenta nombre como GetCursosPosW o GetCursosPosA (), asi que llamamos por GetCursosPos...
Option Explicit
Private Type PointAPI
x As Long
y As Long
End Type
Private Sub Form_Load()
Dim udtCursorPos As PointAPI
MsgBox Invoke("User32", "GetCursorPos", VarPtr(udtCursorPos))
MsgBox udtCursorPos.x & vbCrLf & udtCursorPos.y
End Sub
Con esto ya podras crear los invoques del CopyMemory y de cualquier API...
Dulces Lunas!¡.