Salut
Toujours en conversion du programme de VB6 à VB.Net,, je bloque sur un dernier point du programme.

Il s'agit d'une procedure "ReadProcessMémory".

voici la code d'origine.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Public Function GetFloat(ByVal Address As Integer) As Single
        On Error Resume Next

        hProcess = OpenProcess(PROCESS_READ_WRITE_QUERY, False, pid)
        Test = ReadProcessMemory(hProcess, Address, sngbuffer, ByVal 4 ,0)
        CloseHandle(hProcess)
        GetFloat = sngbuffer
End Function


Public Function GetLong(ByVal Address As Long) As Long
        On Error Resume Next
        hProcess = OpenProcess(PROCESS_READ_WRITE_QUERY, False, pid)
        Test = ReadProcessMemory(hProcess, Address, longBuffer, ByVal 4, 0)
        CloseHandle(hProcess)
        GetLong = longBuffer
    End Function
Les erreurs concernent les "ByVal"

Après quelques recherches et info, glané à droite et gauche. Il semblerait que le problème vienne de cette ligne suivante.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
Public Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
J'ai réalisé plusieurs modification en suprimant des ByRef pour des Byval, des Long pour des Integer et autre.

Mais je sèche la.

Merci de m'aider.