wiasParseEndorserString 函式 (wiamdef.h)
wiasParseEndorserString 函式會剖析背書者字串,並以與這些令牌相關聯的值取代字串中 WIA 服務定義和廠商定義的令牌。
語法
HRESULT wiasParseEndorserString(
[in] BYTE *pWiasContext,
LONG lFlags,
[out, optional] WIAS_ENDORSER_INFO *pInfo,
[out] BSTR *pOutputString
);
參數
[in] pWiasContext
WIA 專案內容的指標 (包含 Microsoft Windows SDK 檔) ) 中所述之WIA_DPS_ENDORSER_STRING (屬性的項目內容。
lFlags
保留供系統使用,且應設定為 0。
[out, optional] pInfo
包含頁面計數和自定義令牌/值組清單 的WIAS_ENDORSER_INFO 結構的指標。 可以是 NULL。
[out] pOutputString
接收已剖析背書者字串位址的記憶體位置指標。 如果專案上的 *pOutputString 不是 NULL,則函式會假設呼叫端已配置緩衝區;否則,WIA 服務將會配置它。 請注意,WIA 服務假設在 stdlib.h) 字元長中定義的結果背書者字串上限為MAX_PATH (。 如果驅動程式預期字串較長,它應該配置緩衝區本身。 如果呼叫端配置緩衝區, 它必須先 將緩衝區的內容初始化為零,才能使用此函式。
傳回值
成功時,函式會傳回S_OK。
如果函式失敗,它會傳回標準 COM 錯誤或其中一個 WIA 錯誤碼。
備註
應用程式會將 WIA_DPS_ENDORSER_STRING 屬性設定為字串,該字串可以包含 WIA 服務定義的令牌$DATE$、$TIME$、$PAGE_COUNT$、$DAY$、$MONTH$和 $YEAR$,以及廠商定義的令牌。 驅動程式呼叫 wiasParseEndorserString 之後, pOutputString 所指向的字串會包含 WIA_DPS_ENDORSER_STRING 屬性中的字串複本,但以標記所代表值取代的任何標記。 例如,如果應用程式將背書者字串設定為 「This page was scaned on $DATE$」,而目前的日期是 2000 年 10 月 1 日,產生的輸出字元串會是「此頁面已在 2000/10/1 上掃描」。
您可以在 wiadef.h 中找到標準 WIA 背書者令牌清單。
驅動程式可以要求 wiasParseEndorserString 取代廠商定義令牌的值,方法是針對每個令牌/值組填寫 WIAS_ENDORSER_VALUE 結構,並在 WIAS_ENDORSER_INFO 結構中封裝所有這些結構。 下列範例示範如何使用此函式。
HRESULT hr = S_OK;
BSTR bstrResultingEndorser = NULL;
WIAS_ENDORSER_VALUE aMyTokens[] = {L"$MY_TOKEN$", L"My value"};
WIAS_ENDORSER_INFO Info = {0, 1, aMyTokens};
hr = wiasParseEndorserString(pWiasContext, 0,
&Info, &bstrResultingEndorser);
假設WIA_DPS_ENDORSER_STRING屬性包含 「This is $MY_TOKEN$」,而且 wiasParseEndorserString 的呼叫成功, bstrResultingEndorser 現在會包含 “This is My value”。
規格需求
需求 | 值 |
---|---|
目標平台 | 桌面 |
標頭 | wiamdef.h (包含Wiamdef.h) |
程式庫 | Wiaservc.lib |
Dll | Wiaservc.dll |