QueryWorkingSetEx 函式 (psapi.h)
擷取指定進程位址空間中特定虛擬位址頁面的擴充資訊。
語法
BOOL QueryWorkingSetEx(
[in] HANDLE hProcess,
[in, out] PVOID pv,
[in] DWORD cb
);
參數
[in] hProcess
進程的句柄。 句柄必須具有 PROCESS_QUERY_INFORMATION 訪問許可權。 如需詳細資訊,請參閱 處理安全性和訪問許可權。
[in, out] pv
PSAPI_WORKING_SET_EX_INFORMATION 結構的陣列指標。 在輸入時,陣列中的每個項目都會指定感興趣的虛擬位址。 輸出時,陣列中的每個項目都會接收對應虛擬頁面的相關信息。
[in] cb
pv 緩衝區的大小,以位元組為單位。
傳回值
如果函式成功,則傳回非零的值。
如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
備註
不同於受限於目標進程的工作集的 QueryWorkingSet 函式, QueryWorkingSetEx 函式可用來查詢不在進程工作集中但仍是進程的一部分,例如 AWE 和大型頁面。
從 Windows 7 和 Windows Server 2008 R2 開始,Psapi.h 會建立 PSAPI 函式的版本號碼。 PSAPI 版本號碼會影響用來呼叫函式的名稱,以及程式必須載入的連結庫。
如果 PSAPI_VERSION 為 2 或更新版本,此函式會定義為 Psapi.h 中的 K32QueryWorkingSetEx,並在 Kernel32.lib 中匯出,並 Kernel32.dll。 如果 PSAPI_VERSION 為 1,此函式會在 Psapi.h 中定義為 QueryWorkingSetEx ,並在 Psapi.lib 中匯出,並 Psapi.dll 為呼叫 K32QueryWorkingSetEx 的包裝函式。
必須在舊版 Windows 和 Windows 7 和更新版本上執行的程式應該一律將此函式呼叫為 QueryWorkingSetEx。 若要確保符號的正確解析,請將 Psapi.lib 新增至 TARGETLIBS 宏,並使用 “–DPSAPI_VERSION=1” 編譯程式。 若要使用運行時間動態連結,請載入 Psapi.dll。
範例
如需範例,請參閱 從 NUMA 節點配置記憶體。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista、Windows XP Professional x64 Edition [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008、Windows Server 2003 SP1 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | psapi.h |
程式庫 | Windows 7 和 Windows Server 2008 R2 上的 Kernel32.lib;如果 Windows 7 和 Windows Server 2008 R2 上的 PSAPI_VERSION=1) ,Psapi.lib (;Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP 上的 Psapi.lib |
Dll | windows 7 和 Windows Server 2008 R2 上的 Kernel32.dll;如果 windows 7 和 Windows Server 2008 R2 上的 PSAPI_VERSION=1) ,Psapi.dll (;Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP 上的 Psapi.dll |