RegLoadMUIStringA 函式 (winreg.h)
從指定的索引鍵和子機碼載入指定的字串。
語法
LSTATUS RegLoadMUIStringA(
[in] HKEY hKey,
[in, optional] LPCSTR pszValue,
[out, optional] LPSTR pszOutBuf,
[in] DWORD cbOutBuf,
[out, optional] LPDWORD pcbData,
[in] DWORD Flags,
[in, optional] LPCSTR pszDirectory
);
參數
[in] hKey
開啟登錄機碼的句柄。 金鑰必須已以KEY_QUERY_VALUE訪問許可權開啟。 如需詳細資訊,請參閱 登錄機碼安全性和訪問許可權。
RegCreateKeyEx 或 RegOpenKeyEx 函式會傳回此句柄。 它也可以是下列其中一個 預先定義的索引鍵:
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_CONFIG
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
[in, optional] pszValue
登錄值的名稱。
[out, optional] pszOutBuf
接收字串之緩衝區的指標。
下列表單的字串會收到特殊處理:
@[path]\dllname,-strID
標識符 strID 的字串會從 dllname 載入;路徑是選擇性 的 。 如果 pszDirectory 參數不是 NULL,目錄會前面加上登錄數據中指定的路徑。 請注意, dllname 可以包含要展開的環境變數。
[in] cbOutBuf
pszOutBuf 緩衝區的大小,以位元組為單位。
[out, optional] pcbData
變數的指標,接收複製到 pszOutBuf 緩衝區的數據大小,以位元組為單位。
如果緩衝區不夠大而無法保存數據,函式會傳回ERROR_MORE_DATA,並將所需的緩衝區大小儲存在 由ERROR_MORE_DATA Data 指向的變數中。 在此情況下,緩衝區的內容是未定義的。
[in] Flags
此參數可以是 0 或下列值。
值 | 意義 |
---|---|
|
字串會被截斷,以符合 pszOutBuf 緩衝區的可用大小。 如果已指定此旗標, 則其必須為NULL。 |
[in, optional] pszDirectory
目錄路徑。
傳回值
如果函式成功,傳回值會ERROR_SUCCESS。
如果函式失敗,則傳回值是 系統錯誤碼。
如果 sqlData 緩衝區太小而無法接收字串,則函式會傳回ERROR_MORE_DATA。
此函式的 ANSI 版本會傳回ERROR_CALL_NOT_IMPLEMENTED。
備註
只有 Unicode 才支援 RegLoadMUIString 函式。 雖然宣告了 Unicode (W) 和 ANSI (A) 版本的函式, 但 RegLoadMUIStringA 函式會傳回ERROR_CALL_NOT_IMPLEMENTED。 應用程式應該明確呼叫 RegLoadMUIStringW ,或指定 Unicode 作為平台調用中的字元集, (PInvoke) 呼叫。
若要編譯使用此函式的應用程式,請將_WIN32_WINNT定義為0x0600或更新版本。 如需詳細資訊,請參閱 使用 Windows 標頭。
注意
winreg.h 標頭會將 RegLoadMUIString 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | winreg.h (包含 Windows.h) |
程式庫 | Advapi32.lib |
Dll | Advapi32.dll |