ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

psapi.h
Go to the documentation of this file.
00001 /*
00002     psapi.h - Include file for PSAPI.DLL APIs
00003 
00004     Written by Mumit Khan <khan@nanotech.wisc.edu>
00005 
00006     This file is part of a free library for the Win32 API.
00007 
00008     NOTE: This strictly does not belong in the Win32 API since it's
00009     really part of Platform SDK. However,GDB needs it and we might
00010     as well provide it here.
00011 
00012     This library is distributed in the hope that it will be useful,
00013     but WITHOUT ANY WARRANTY; without even the implied warranty of
00014     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
00015 
00016 */
00017 #ifndef _PSAPI_H
00018 #define _PSAPI_H
00019 
00020 #ifdef __cplusplus
00021 extern "C" {
00022 #endif
00023 
00024 #ifndef RC_INVOKED
00025 
00026 typedef struct _MODULEINFO {
00027     LPVOID lpBaseOfDll;
00028     DWORD SizeOfImage;
00029     LPVOID EntryPoint;
00030 } MODULEINFO,*LPMODULEINFO;
00031 
00032 typedef struct _PSAPI_WS_WATCH_INFORMATION {
00033     LPVOID FaultingPc;
00034     LPVOID FaultingVa;
00035 } PSAPI_WS_WATCH_INFORMATION,*PPSAPI_WS_WATCH_INFORMATION;
00036 
00037 typedef struct _PROCESS_MEMORY_COUNTERS {
00038     DWORD cb;
00039     DWORD PageFaultCount;
00040     DWORD PeakWorkingSetSize;
00041     DWORD WorkingSetSize;
00042     DWORD QuotaPeakPagedPoolUsage;
00043     DWORD QuotaPagedPoolUsage;
00044     DWORD QuotaPeakNonPagedPoolUsage;
00045     DWORD QuotaNonPagedPoolUsage;
00046     DWORD PagefileUsage;
00047     DWORD PeakPagefileUsage;
00048 } PROCESS_MEMORY_COUNTERS,*PPROCESS_MEMORY_COUNTERS;
00049 
00050 typedef struct _PERFORMANCE_INFORMATION {
00051     DWORD cb;
00052     SIZE_T CommitTotal;
00053     SIZE_T CommitLimit;
00054     SIZE_T CommitPeak;
00055     SIZE_T PhysicalTotal;
00056     SIZE_T PhysicalAvailable;
00057     SIZE_T SystemCache;
00058     SIZE_T KernelTotal;
00059     SIZE_T KernelPaged;
00060     SIZE_T KernelNonpaged;
00061     SIZE_T PageSize;
00062     DWORD HandleCount;
00063     DWORD ProcessCount;
00064     DWORD ThreadCount;
00065 } PERFORMANCE_INFORMATION, *PPERFORMANCE_INFORMATION;
00066 
00067 typedef struct _ENUM_PAGE_FILE_INFORMATION {
00068     DWORD cb;
00069     DWORD Reserved;
00070     SIZE_T TotalSize;
00071     SIZE_T TotalInUse;
00072     SIZE_T PeakUsage;
00073 } ENUM_PAGE_FILE_INFORMATION, *PENUM_PAGE_FILE_INFORMATION;
00074 
00075 typedef BOOL (CALLBACK *PENUM_PAGE_FILE_CALLBACKA)(LPVOID, PENUM_PAGE_FILE_INFORMATION, LPCSTR);
00076 typedef BOOL (CALLBACK *PENUM_PAGE_FILE_CALLBACKW)(LPVOID, PENUM_PAGE_FILE_INFORMATION, LPCWSTR);
00077 
00078 /* Grouped by application,not in alphabetical order. */
00079 BOOL WINAPI EnumProcesses(DWORD *,DWORD,DWORD *);
00080 BOOL WINAPI EnumProcessModules(HANDLE,HMODULE *,DWORD,LPDWORD);
00081 BOOL WINAPI EnumPageFilesA(PENUM_PAGE_FILE_CALLBACKA,LPVOID);
00082 BOOL WINAPI EnumPageFilesW(PENUM_PAGE_FILE_CALLBACKW,LPVOID);
00083 DWORD WINAPI GetModuleBaseNameA(HANDLE,HMODULE,LPSTR,DWORD);
00084 DWORD WINAPI GetModuleBaseNameW(HANDLE,HMODULE,LPWSTR,DWORD);
00085 DWORD WINAPI GetModuleFileNameExA(HANDLE,HMODULE,LPSTR,DWORD);
00086 DWORD WINAPI GetModuleFileNameExW(HANDLE,HMODULE,LPWSTR,DWORD);
00087 BOOL WINAPI GetModuleInformation(HANDLE,HMODULE,LPMODULEINFO,DWORD);
00088 BOOL WINAPI EmptyWorkingSet(HANDLE);
00089 BOOL WINAPI QueryWorkingSet(HANDLE,PVOID,DWORD);
00090 BOOL WINAPI InitializeProcessForWsWatch(HANDLE);
00091 BOOL WINAPI GetWsChanges(HANDLE,PPSAPI_WS_WATCH_INFORMATION,DWORD);
00092 DWORD WINAPI GetMappedFileNameW(HANDLE,LPVOID,LPWSTR,DWORD);
00093 DWORD WINAPI GetMappedFileNameA(HANDLE,LPVOID,LPSTR,DWORD);
00094 BOOL WINAPI EnumDeviceDrivers(LPVOID *,DWORD,LPDWORD);
00095 DWORD WINAPI GetDeviceDriverBaseNameA(LPVOID,LPSTR,DWORD);
00096 DWORD WINAPI GetDeviceDriverBaseNameW(LPVOID,LPWSTR,DWORD);
00097 DWORD WINAPI GetDeviceDriverFileNameA(LPVOID,LPSTR,DWORD);
00098 DWORD WINAPI GetDeviceDriverFileNameW(LPVOID,LPWSTR,DWORD);
00099 BOOL WINAPI GetProcessMemoryInfo(HANDLE,PPROCESS_MEMORY_COUNTERS,DWORD);
00100 BOOL WINAPI GetPerformanceInfo(PPERFORMANCE_INFORMATION,DWORD);
00101 DWORD WINAPI GetProcessImageFileNameW(HANDLE,LPWSTR,DWORD);
00102 DWORD WINAPI GetProcessImageFileNameA(HANDLE,LPSTR,DWORD);
00103 
00104 #endif /* not RC_INVOKED */
00105 
00106 #ifdef UNICODE
00107 #define PENUM_PAGE_FILE_CALLBACK PENUM_PAGE_FILE_CALLBACKW
00108 #define EnumPageFiles EnumPageFilesW
00109 #define GetModuleBaseName GetModuleBaseNameW
00110 #define GetModuleFileNameEx GetModuleFileNameExW
00111 #define GetMappedFilenameEx GetMappedFilenameExW
00112 #define GetDeviceDriverBaseName GetDeviceDriverBaseNameW
00113 #define GetDeviceDriverFileName GetDeviceDriverFileNameW
00114 #define GetProcessImageFileName GetProcessImageFileNameW
00115 #else
00116 #define PENUM_PAGE_FILE_CALLBACK PENUM_PAGE_FILE_CALLBACKA
00117 #define EnumPageFiles EnumPageFilesA
00118 #define GetModuleBaseName GetModuleBaseNameA
00119 #define GetModuleFileNameEx GetModuleFileNameExA
00120 #define GetMappedFilenameEx GetMappedFilenameExA
00121 #define GetDeviceDriverBaseName GetDeviceDriverBaseNameA
00122 #define GetDeviceDriverFileName GetDeviceDriverFileNameA
00123 #define GetProcessImageFileName GetProcessImageFileNameA
00124 #endif
00125 
00126 #ifdef __cplusplus
00127 }
00128 #endif
00129 
00130 #endif /* _PSAPI_H */
00131 

Generated on Sat May 26 2012 04:31:00 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.