ENUMRESNAMEPROCW 回呼函式 (libloaderapi.h)
搭配 EnumResourceNames 和 EnumResourceNamesEx 函式使用的應用程式定義回呼函式。 它會接收資源的類型和名稱。 ENUMRESNAMEPROC類型會定義這個回呼函式的指標。 EnumResNameProc 是應用程式定義函數名稱的預留位置。
語法
ENUMRESNAMEPROCW Enumresnameprocw;
BOOL Enumresnameprocw(
[in, optional] HMODULE hModule,
LPCWSTR lpType,
LPWSTR lpName,
[in] LONG_PTR lParam
)
{...}
參數
[in, optional] hModule
類型: HMODULE
模組的控制碼,其可執行檔包含所列舉的資源。 如果此參數為 Null,函式會列舉用來建立目前進程之模組中的資源名稱。
lpType
類型: LPCTSTR
要列舉名稱的資源類型。 或者,這個參數可以是 ,其中 ID 是 MAKEINTRESOURCE(ID)
代表預先定義資源類型的整數值。 如需標準資源類型,請參閱 資源類型。 如需詳細資訊,請參閱下面的<備註>一節。
lpName
類型: LPTSTR
所列舉型別的資源名稱。 或者,這個參數可以是 ,其中 ID 是 MAKEINTRESOURCE(ID)
資源的整數識別碼。 如需詳細資訊,請參閱下面的<備註>一節。
[in] lParam
類型: LONG_PTR
傳遞至 EnumResourceNames 或 EnumResourceNamesEx 函 式的應用程式定義參數。 此參數可用於錯誤檢查。
傳回值
類型: BOOL
傳回 TRUE 以繼續列舉或 FALSE 以停止列舉。
備註
如果 IS_INTRESOURCE (lpszType) 為 TRUE, 則 lpszType 會指定指定指定資源類型的整數識別碼。 否則,它是以 Null 結尾字串的指標。 如果字串的第一個字元是井字元號 (#) ,則其餘字元代表指定資源類型的整數識別碼的十進位數。 例如,字串 「#258」 代表識別碼 258。
同樣地,如果 IS_INTRESOURCE (lpszName) 為 TRUE, 則 lpszName 會指定指定資源的整數識別碼。 否則,它是以 Null 結尾字串的指標。 如果字串的第一個字元是磅號 (#) ,則其餘字元代表指定資源的整數識別碼的十進位數。
應用程式必須將此函式的位址傳遞至 EnumResourceNames 或 EnumResourceNamesEx 函式來註冊此函式。
如果回呼函式傳回 FALSE, 則 EnumResourceNames 或 EnumResourceNamesEx 將會停止列舉並傳回 FALSE。 在 Windows XP 和更早版本上,從 GetLastError 取得的值將會 ERROR_SUCCESS;從 Windows Vista 開始,最後一個錯誤值將會 ERROR_RESOURCE_ENUM_USER_STOP。
注意
libloaderapi.h 標頭會將 ENUMRESNAMEPROC 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
需求
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | libloaderapi.h (包含 Windows.h) |
另請參閱
概念
參考