wiasParseEndorserString 函数 (wiamdef.h)
wiasParseEndorserString 函数分析认可字符串,将字符串中 WIA 服务定义的令牌和供应商定义的令牌替换为与这些令牌关联的值。
语法
HRESULT wiasParseEndorserString(
[in] BYTE *pWiasContext,
LONG lFlags,
[out, optional] WIAS_ENDORSER_INFO *pInfo,
[out] BSTR *pOutputString
);
参数
[in] pWiasContext
指向 WIA 项上下文的指针(包含WIA_DPS_ENDORSER_STRING属性的项的上下文(Microsoft Windows SDK 文档中所述)。
lFlags
保留供系统使用,应设置为 0。
[out, optional] pInfo
指向包含页计数和自定义令牌/值对列表的 WIAS_ENDORSER_INFO 结构的指针。 可以为 NULL 。
[out] pOutputString
指向接收已分析认可字符串地址的内存位置的指针。 如果 *pOutputString 条目为非 NULL,则该函数假定调用方分配了缓冲区;否则,WIA 服务将分配它。 请注意,WIA 服务假定 最大 生成的认可字符串是MAX_PATH(在 stdlib.h) 字符中定义的。 如果驱动程序期望字符串更长,则应分配缓冲区本身。 如果调用方分配缓冲区,则它 在使用此函数之前必须 将缓冲区的内容初始化为零。
返回值
成功后,该函数将返回S_OK。
如果函数失败,它将返回标准 COM 错误或 WIA 错误代码之一。
言论
应用程序将 WIA_DPS_ENDORSER_STRING 属性设置为一个字符串,该字符串可以包含 WIA 服务定义的令牌$DATE$、$TIME$、$PAGE_COUNT$、$DAY$、$MONTH$和 $YEAR$,以及供应商定义的令牌。 驱动程序调用 wiasParseEndorserString后,pOutputString 指向的字符串包含WIA_DPS_ENDORSER_STRING属性中的字符串副本,但使用标记表示的值替换的任何标记。 例如,如果应用程序将认可字符串设置为“此页在 $DATE$上扫描”,并且当前日期为 2000 年 10 月 1 日,生成的输出字符串将为“2000/10/1 扫描此页面”。
可以在 wiadef.h中找到标准 WIA 认可者令牌列表。
驱动程序可以通过为每个令牌/值对填写 WIAS_ENDORSER_VALUE 结构,并在 WIAS_ENDORSER_INFO 结构中打包所有这些结构来请求 wiasParseEndorserString 替换供应商定义的令牌的值。 以下示例演示如何使用此函数。
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 属性包含“这是 $MY_TOKEN$”,并且对 wiasParseEndorserString 的调用成功,bstrResultingEndorser 现在将包含“这是我的值”。
要求
要求 | 价值 |
---|---|
目标平台 | 桌面 |
标头 | wiamdef.h (包括 Wiamdef.h) |
库 | Wiaservc.lib |
DLL | Wiaservc.dll |