16 static LPCTSTR lpKey =
_T(
"SYSTEM\\CurrentControlSet\\Control\\Session Manager\\Memory Management");
83 while (*lpPageFiles !=
_T(
'\0'))
85 if (*lpPageFiles ==
_T(
' '))
92 *lpInitialSize = (
INT)
_ttoi(lpPageFiles);
97 *lpMaximumSize = (
INT)
_ttoi(lpPageFiles);
110 TCHAR szDrives[1024];
111 LPTSTR DrivePtr = szDrives;
123 while (DriveLen != 0)
131 lstrcpyn(szDrive, DrivePtr,
sizeof(szDrive) /
sizeof(
TCHAR));
177 pVirtMem->
Count = PgCnt;
185 TCHAR szPagingFiles[2048];
190 for (
i = 0;
i < pVirtMem->
Count; ++
i)
197 _T(
"%s\\pagefile.sys %i %i"),
203 lstrcpy(szPagingFiles + nPos, szText);
209 szPagingFiles[nPos] =
_T(
'\0');
240 for (
i = 0;
i < 26;
i++)
246 _T(
"%s\\pagefile.sys"),
300 TCHAR szDisplayString[256];
305 for (
i = 0;
i < 26;
i++)
315 sizeof(szSize) /
sizeof(szSize[0]));
323 sizeof(szSize) /
sizeof(szSize[0]));
354 TCHAR szDisplayString[256];
363 sizeof(szSize) /
sizeof(szSize[0]));
371 sizeof(szSize) /
sizeof(szSize[0]));
461 if (MaxSize < MinSize ||
507 MEMORYSTATUSEX MemoryStatus;
509 UINT i, FreeMemMb, RecoMemMb, PageFileSizeMb;
589 MemoryStatus.dwLength =
sizeof(MEMORYSTATUSEX);
592 FreeMemMb = (
UINT)(MemoryStatus.ullTotalPhys / (1024 * 1024));
593 RecoMemMb = FreeMemMb + (FreeMemMb / 2);
594 if (RecoMemMb > 4096)
596 _stprintf(szBuffer, szMegabytes, RecoMemMb);
603 for (
i = 0;
i < pVirtMem->
Count;
i++)
606 _T(
"%c:\\pagefile.sys"),
616 pfSize.
LowPart = fdata.nFileSizeLow;
617 pfSize.
HighPart = fdata.nFileSizeHigh;
618 PageFileSizeMb += pfSize.
QuadPart / (1024*1024);
623 _stprintf(szBuffer, szMegabytes, PageFileSizeMb);
658 for (
i = 0;
i < 26;
i++)
682 for (
i = 0;
i < 26;
i++)
711 if (pVirtMem ==
NULL)
#define IDS_WARNMAXIMUMRANGE
BOOL WINAPI CheckDlgButton(_In_ HWND, _In_ int, _In_ UINT)
#define UNREFERENCED_PARAMETER(P)
static VOID OnNoPagingFile(PVIRTMEM pVirtMem)
#define GetLogicalDriveStrings
BOOL WINAPI MapDialogRect(_In_ HWND, _Inout_ LPRECT)
static VOID ParseMemSettings(PVIRTMEM pVirtMem)
#define INVALID_HANDLE_VALUE
_TCHAR * _tcscpy(_TCHAR *to, const _TCHAR *from)
DWORD WINAPI GetLastError(VOID)
#define SendDlgItemMessage
#define IDS_WARNINITIALRANGE
#define IDS_WARNMAXIMUMSIZE
BOOL WINAPI EndDialog(_In_ HWND, _In_ INT_PTR)
static VOID OnVirtMemDialogOk(PVIRTMEM pVirtMem)
void ShowLastWin32Error(HWND hwndParent)
static VOID GetPageFileSizes(LPTSTR lpPageFiles, LPINT lpInitialSize, LPINT lpMaximumSize)
static VOID UpdatePagefileEntry(PVIRTMEM pVirtMem, INT ListIndex, INT DriveIndex)
size_t __cdecl _tcslen(const _TCHAR *str)
UINT WINAPI GetDlgItemInt(_In_ HWND, _In_ int, _Out_opt_ PBOOL, _In_ BOOL)
#define MOVEFILE_DELAY_UNTIL_REBOOT
static VOID OnSysManSize(PVIRTMEM pVirtMem)
UINT WINAPI IsDlgButtonChecked(_In_ HWND, _In_ int)
struct _VIRTMEM * PVIRTMEM
#define REG_OPTION_NON_VOLATILE
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
VOID ResourceMessageBox(HINSTANCE hInstance, HWND hwnd, UINT uType, UINT uCaptionId, UINT uMessageId)
HWND WINAPI GetDlgItem(_In_opt_ HWND, _In_ int)
_In_ WDFCOLLECTION _In_ ULONG Index
#define IDS_PAGEFILE_NONE
static BOOL ReadPageFileSettings(PVIRTMEM pVirtMem)
#define IDS_WARNINITIALSIZE
#define MB_ICONINFORMATION
BOOL WINAPI SetDlgItemInt(_In_ HWND, _In_ int, _In_ UINT, _In_ BOOL)
static BOOL OnSelChange(HWND hwndDlg, PVIRTMEM pVirtMem)
#define IDS_PAGEFILE_SYSTEM
static VOID OnInitVirtMemDialog(HWND hwnd, PVIRTMEM pVirtMem)
static VOID OnCustom(PVIRTMEM pVirtMem)
BOOL WINAPI EnableWindow(_In_ HWND, _In_ BOOL)
#define GetDiskFreeSpaceEx
#define GetVolumeInformation
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
int CDECL _ttoi(const _TCHAR *str)
static VOID SetListBoxColumns(HWND hwndListBox)
BOOL NTAPI GlobalMemoryStatusEx(LPMEMORYSTATUSEX lpBuffer)
static VOID OnSet(PVIRTMEM pVirtMem)
static VOID InitPagefileList(PVIRTMEM pVirtMem)
#define IDS_MESSAGEBOXTITLE
static VOID OnDestroy(PVIRTMEM pVirtMem)
int _tcsncmp(const _TCHAR *s1, const _TCHAR *s2, size_t n)
#define HeapFree(x, y, z)
#define RegCloseKey(hKey)
INT_PTR CALLBACK VirtMemDlgProc(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
static VOID WritePageFileSettings(PVIRTMEM pVirtMem)
HANDLE WINAPI FindFirstFileW(IN LPCWSTR lpFileName, OUT LPWIN32_FIND_DATAW lpFindFileData)
#define HKEY_LOCAL_MACHINE
BOOL WINAPI FindClose(HANDLE hFindFile)