'Sub/Function....
'...
'Call zPatchVal(VarPtr(sc_aBuf(1)), PATCH_0A, ObjPtr(Me))
'...
'end Sub/Function
'VarPtr
'Die VarPtr-Funktion liefert Ihnen die Startadresse des Speicherbereichs zurück,
'in dem eine Variable (nicht notwendigerweise ihr Inhalt) gespeichert wird.
'ObjPtr
'Die ObjPtr-Funktion liefert Ihnen einen Zeiger auf das Interface eines instanzierten Objekts zurück.
'Hier ein Auszug aus der Offline
MSDN (Me in der
IDE tippen und F1)
'Das Schlüsselwort Me verhält sich wie eine implizit deklarierte Variable.
'Es steht allenProzeduren in einemKlassenmodul automatisch zur Verfügung.
'Wenn eine Klasse mehrere Instanzen haben kann, stellt Me eine Möglichkeit dar,
'um sich auf die jenige Instanz der Klasse zu beziehen, in der Code ausgeführt wird.
'Private Declare Sub RtlMoveMemory Lib "kernel32.dll" ( _
' ByRef Destination As Any, _
' ByRef Source As Any, _
' ByVal Length As Long)
'
'Private Sub zPatchVal(ByVal nAddr As Long, ByVal nOffset As Long, ByVal nValue As Long)
''Patch the machine code buffer at the indicated offset with the passed value
' Call RtlMoveMemory(ByVal nAddr + nOffset, nValue, 4)
'End Sub