update for HEAD-2003021201
[reactos.git] / lib / kernel32 / mem / procmem.c
1 /* $Id$
2  *
3  * COPYRIGHT:            See COPYING in the top level directory
4  * PROJECT:              ReactOS kernel
5  * FILE:                 lib/kernel32/mem/procmem.c
6  * PURPOSE:              
7  * PROGRAMMER:           Boudewijn Dekker
8  */
9
10 /* INCLUDES ******************************************************************/
11
12 #include <k32.h>
13
14 /* FUNCTIONS *****************************************************************/
15 WINBOOL
16 STDCALL
17 ReadProcessMemory (
18         HANDLE  hProcess,
19         LPCVOID lpBaseAddress,
20         LPVOID  lpBuffer,
21         DWORD   nSize,
22         LPDWORD lpNumberOfBytesRead
23         )
24 {
25
26         NTSTATUS Status;
27
28         Status = NtReadVirtualMemory( hProcess, (PVOID)lpBaseAddress,lpBuffer, nSize,
29                 (PULONG)lpNumberOfBytesRead
30                 );
31
32         if (!NT_SUCCESS(Status))
33         {
34                 SetLastErrorByStatus (Status);
35                 return FALSE;
36         }
37         return TRUE;
38 }
39
40
41 WINBOOL
42 STDCALL
43 WriteProcessMemory (
44         HANDLE  hProcess,
45         LPVOID  lpBaseAddress,
46         LPVOID  lpBuffer,
47         DWORD   nSize,
48         LPDWORD lpNumberOfBytesWritten
49         )
50 {
51         NTSTATUS Status;
52
53         Status = NtWriteVirtualMemory( hProcess, lpBaseAddress,lpBuffer, nSize,
54                 (PULONG)lpNumberOfBytesWritten
55                 );
56
57         if (!NT_SUCCESS(Status))
58         {
59                 SetLastErrorByStatus (Status);
60                 return FALSE;
61         }
62         return TRUE;
63 }
64
65
66 /* EOF */