PifMgr_GetProperties 函式 (shlobj_core.h)

[PifMgr_GetProperties 可用於需求一節中指定的作業系統。 它可能會在後續版本中改變或無法使用。]

從 .pif 檔案傳回指定的數據區塊。

語法

int PifMgr_GetProperties(
  [in, optional]  HANDLE hProps,
  [in, optional]  PCSTR  pszGroup,
  [out, optional] void   *lpProps,
                  int    cbProps,
                  UINT   flOpt
);

參數

[in, optional] hProps

類型: HANDLE

應用程式屬性的句柄。 此參數應該設定為 PifMgr_OpenProperties所傳回的值。

[in, optional] pszGroup

類型: PCSTR

包含屬性組名的 Null 終止字串。 它可以是下列其中一個,或是對應至有效 .pif 擴展名的任何其他名稱。

“WINDOWS 286 3.0”

“WINDOWS 386 3.0”

“WINDOWS VMM 4.0”

“WINDOWS NT 3.1”

“WINDOWS NT 4.0”

[out, optional] lpProps

類型: void*

當此函式傳回時,包含 PROPPRG 結構的指標。

cbProps

類型: int

以位元組為單位的緩衝區大小,由 lpProps 指向。

flOpt

類型: UINT

將此參數設定為 GETPROPS_NONE。

傳回值

類型: int

如果成功,則會傳回 NULL 。 如果失敗,函式會將句柄傳回為 hProps 傳遞的應用程式屬性。

備註

如果區塊是「具名」區塊,它必須是 .pif 檔案內連結擴展名的名稱。 這可以是任何預先定義的名稱 (,例如“WINDOWS 386 3.0”) 或您自己的區塊名稱。 您可以使用 PifMgr_SetProperties建立自己的具名數據區塊。 具名數據也可以視為原始數據,因為它會傳回給呼叫端應用程式,而不需翻譯。

具名區塊的大小可藉由呼叫 PifMgr_GetProperties ,並將 cbProps 設定為 0 來決定。 不會複製任何數據,但會傳回要求區塊的大小。

您可以將 pszGroup 設定為 NULL 來列舉所有具名區塊。 lpProps 必須是 16 位元節緩衝區的指標,才能包含要求的區塊名稱,而 cbProps 必須設定為以零起始的區塊索引。 傳回值是區塊的大小,如果找不到區塊,則為零。

如果您藉由將 name 參數的選取器設定為 NULL 來要求未命名的屬性區塊,而 offset 是屬性群組序數,則會傳回相關聯的結構。 例如,PifMgr_GetProperties (GROUP_TSK) 传回预先定义的结构,其中包含與 .pif 檔案無關之格式的所有工作相關信息。 這是一項寶貴的服務,因為它可免除呼叫應用程式來處理包含各種區段的 .pif 檔案, (稱為 .pif 延伸模組) ,但只需要一個。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 shlobj_core.h
程式庫 Shell32.lib
Dll Shell32.dll (5.0 版或更新版本)

另請參閱

PifMgr_CloseProperties

PifMgr_OpenProperties