msiGetFeatureInfoA 函式 (msi.h)
MsiGetFeatureInfo函式會傳回功能的描述性資訊。
語法
UINT MsiGetFeatureInfoA(
[in] MSIHANDLE hProduct,
[in] LPCSTR szFeature,
[out, optional] LPDWORD lpAttributes,
[out, optional] LPSTR lpTitleBuf,
[in, out, optional] LPDWORD pcchTitleBuf,
[out, optional] LPSTR lpHelpBuf,
[in, out, optional] LPDWORD pcchHelpBuf
);
參數
[in] hProduct
處理擁有此功能的產品。 此控制碼是從 MsiOpenProduct取得。
[in] szFeature
應該傳回哪些資訊的功能程式碼。
[out, optional] lpAttributes
包含下列一或多個屬性旗標的位置指標。
INSTALLFEATUREATTRIBUTE_FAVORLOCAL (1)
INSTALLFEATUREATTRIBUTE_FAVORSOURCE (2)
INSTALLFEATUREATTRIBUTE_FOLLOWPARENT (4)
INSTALLFEATUREATTRIBUTE_FAVORADVERTISE (8)
INSTALLFEATUREATTRIBUTE_DISALLOWADVERTISE (16)
INSTALLFEATUREATTRIBUTE_NOUNSUPPORTEDADVERTISE (32)
如需相關資訊,請參閱
功能資料表。 MsiGetFeatureInfo傳回的值是功能資料表的 [屬性] 資料行中的值兩倍。
[out, optional] lpTitleBuf
緩衝區的指標,以接收功能當地語系化的名稱,對應至 功能表格中的 [標題] 欄位。
這個參數是選擇性而且可以是 null。
[in, out, optional] pcchTitleBuf
輸入時, lpTitleBuf的大小。 輸出時, lpTitleBuf中傳回的字元數。 在輸入時,這是緩衝區的完整大小,並包含終止 Null 字元的空間。 如果傳入的緩衝區太小,則傳回的計數不包含終止的 Null 字元。
[out, optional] lpHelpBuf
緩衝區的指標,以接收功能的當地語系化描述,其對應于 功能資料表中功能的 [描述] 欄位。 這個參數是選擇性而且可以是 null。
[in, out, optional] pcchHelpBuf
輸入時, lpHelpBuf的大小。 輸出時, 在 lpHelpBuf中傳回的字元數。 在輸入時,這是緩衝區的完整大小,並包含終止 Null 字元的空間。 如果傳入的緩衝區太小,則傳回的計數不包含終止 Null 字元。
傳回值
傳回碼 | 描述 |
---|---|
|
產品控制碼無效。 |
|
其中一個參數無效。 |
|
緩衝區太小而無法保存要求的資料。 |
|
函式會成功傳回。 |
|
此功能未知。 |
備註
MsiGetFeatureInfo函式的緩衝區大小應該包含終止 Null 字元的額外字元。 如果緩衝區太小,則傳回的字串會以 Null 截斷,而緩衝區大小包含整個字串中的字元數,不包括終止的 Null 字元。 如需詳細資訊,請參閱 從程式呼叫資料庫函式。
注意
msi.h 標頭會將 MsiGetFeatureInfo 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程式碼,可能會導致編譯或執行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
需求
最低支援的用戶端 | Windows Server 2012、Windows 8、Windows Server 2008 R2 或 Windows 7 上的 Windows Installer 5.0。 Windows Server 2008 或 Windows Vista 上的 Windows Installer 4.0 或 Windows Installer 4.5。 Windows Server 2003 或 Windows XP 上的 Windows Installer。 如需 Windows Installer 版本所需的最低 Windows Service Pack 相關資訊,請參閱 Windows Installer Run-Time 需求。 |
目標平台 | Windows |
標頭 | msi.h |
程式庫 | Msi.lib |
Dll | Msi.dll |