IOpcSignatureCustomObject::GetXml 方法 (msopc.h)
获取特定于应用程序的 Object 元素的 XML 标记。
语法
HRESULT GetXml(
[out] UINT8 **xmlMarkup,
[out] UINT32 *count
);
参数
[out] xmlMarkup
指向缓冲区的指针,该缓冲区包含 Object 元素的 XML 标记,并包含开始和结束 Object 标记。
在缓冲区中,XML 标记前面是对应于标记编码的 字节顺序标记 。
支持的编码和 字节顺序标记 值。
编码 | 说明 | 字节顺序标记 |
---|---|---|
UTF8 | UTF-8 | EF BB BF |
UTF16LE | UTF-16,little endian | FF FE |
UTF16BE | UTF-16,big endian | FE FF |
有关具有 字节顺序标记的缓冲区的示例,请参阅“备注”部分。
[out] count
指向 xmlMarkup 缓冲区大小的指针。
返回值
该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。
返回代码 | 说明 |
---|---|
|
方法成功。 |
|
至少一个 xmlMarkup 和 count 参数为 NULL。 |
注解
此方法分配 xmlMarkup 中返回的缓冲区使用的内存。 如果方法成功,请调用 CoTaskMemFree 函数以释放内存。
签名标记中特定于应用程序的 序列化对象 元素可以通过替换签名标记来添加、删除或修改。
若要替换签名标记,请调用 IOpcDigitalSignatureManager::ReplaceSignatureXml 方法。 调用方必须确保添加、删除或修改特定于应用程序的 Object 元素不会破坏签名。
若要对特定于应用程序的 Object 元素或该元素的子元素进行签名,请创建对要签名的 XML 元素的引用。 通过调用 IOpcSignatureReferenceSet::Create 方法创建引用,并将 referenceUri 参数值设置为“#”,后跟被引用元素的 Id 属性值。 例如,如果引用元素的 Id 属性为“Application”,请将 referenceUri 设置为“#Application”。
下表显示了包含“Object Id=”id1“></Object>”<的 xmlMarkup 缓冲区开头的字节顺序标记:
缓冲区字节索引 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | ... |
---|---|---|---|---|---|---|---|---|---|
UTF8 值 | EF | BB | BF | '<' | 'O' | 'b' | 'j' | 'e' | ... |
UTF16LE值 | FF | FE | '<' | 00 | 'O' | 00 | 'b' | 00 | ... |
线程安全性
打包对象不是线程安全的。
有关详细信息,请参阅打包 API 的入门。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 7 [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2008 R2 [仅限桌面应用] |
目标平台 | Windows |
标头 | msopc.h |
另请参阅
概述
引用