ich bekomm immer nur die Meldun angezeigt:
Nur ein Teil der ReadProcessMemory- oder WriteProcessMemory-Anforderung wurde abgeschlossen.
Sonst scheint alles ok zu sein...
Wo hab ich den Fehler gemacht?
Code: Alles auswählen
Procedure.s GetLastErrorAsString(ErrorCode=-1)
Protected message.s{1024}
If ErrorCode = -1
ErrorCode=GetLastError_()
EndIf
FormatMessage_(#FORMAT_MESSAGE_FROM_SYSTEM, 0, ErrorCode, 0, @message, 1024, 0)
ProcedureReturn message
EndProcedure
; tokenHandle = AllocateMemory(4)
; OpenProcessToken_(GetCurrentProcess_(), #TOKEN_ADJUST_PRIVILEGES | #TOKEN_QUERY, tokenHandle)
; privilegeToken.TOKEN_PRIVILEGES
; LookupPrivilegeValue_(0, SE_DEBUG_NAME, privilegeToken\Privileges[0]\Luid)
; privilegeToken\PrivilegeCount = 1
; privilegeToken\Privileges[0]\Attributes = #SE_PRIVILEGE_ENABLED
; AdjustTokenPrivileges_(tokenHandle, 0, privilegeToken, SizeOf(TOKEN_PRIVILEGES), 0, 0)
; CloseHandle_(tokenHandle)
hwnd = FindWindow_(0, "Eigene Dateien")
If hwnd = 0
Debug GetLastErrorAsString()
End
EndIf
Debug "hwnd"
Debug hwnd
buffer = AllocateMemory(4)
If GetWindowThreadProcessId_(hwnd, buffer) = 0
Debug GetLastErrorAsString()
End
EndIf
hprocess = PeekL(buffer)
Debug "hprocess"
Debug hprocess
ohproc = OpenProcess_(#PROCESS_VM_READ, #False, hprocess)
If ohproc = 0
Debug GetLastErrorAsString()
End
EndIf
Debug "ohproc"
Debug ohproc
buffer = AllocateMemory(100)
target = AllocateMemory(4)
PokeL(target, 0)
If ReadProcessMemory_(ohproc, 0, buffer, 10, 0) = 0
Debug GetLastErrorAsString()
End
EndIf
Debug "buffer"
Debug PeekL(buffer)
Scarabol