IOpcPartUri::GetSourceUri 方法 (msopc.h)

获取存储在关系部件中的关系的源 URI。 当前部件 URI 对象表示该关系部件的部件名称。

语法

HRESULT GetSourceUri(
  [out, retval] IOpcUri **sourceUri
);

参数

[out, retval] sourceUri

指向 OPC URI 对象的 IOpcUri 接口的指针,该对象表示存储在“关系”部件中的关系源的 URI。

返回值

该方法返回 HRESULT。 可能的值包括(但并不限于)下表中的项。

返回代码/值 说明
S_OK
方法成功。
E_POINTER
sourceUri 参数为 NULL
OPC_E_RELATIONSHIP_URI_REQUIRED
0x80510003
“关系”部件的部件名称是必需的,但部件名称不是“关系”部件的名称。

有关关系部件的部件名称的详细信息,请参阅 OPC

CreateUri 函数错误
来自 CreateUri 函数的 HRESULT 错误代码。
WinINet 错误
来自 WinINet API 的 HRESULT 错误代码。

注解

如果当前部件 URI 对象表示存储包关系 (“/_rels/.rels”) 的关系部件的部件名称,则 sourceUri 中返回的 OPC URI 对象将表示包根 (“/”) 。

如果当前部件 URI 对象不是关系部件的部件名称,此方法将失败并 出现OPC_E_RELATIONSHIP_URI_REQUIRED 错误。 关系部件名称的语法在 OPC 中指定。

下表显示了可能的当前部件 URI 以及此方法将返回的源 URI。

当前部件 URI 当前部件 URI 说明 源 URI 源 URI 说明 返回值
/mydoc/_rels/picture.jpg.rels 关系部件的部件名称 /mydoc/picture.jpg 部件的部件名称,该部件是存储在由当前部件 URI 对象表示的关系部件中存储的关系的源 S_OK
/_rels/.rels 关系部件的部件名称 / 包根;存储在由当前部件 URI 对象表示的关系部件中的关系的源 S_OK
/mydoc/image/chart1.jpg 不是关系部件的部件的部件名称 Undefined Undefined OPC_E_RELATIONSHIP_URI_REQUIRED
/_rels/a.jpg 不是关系部件的部件的部件名称 Undefined Undefined OPC_E_RELATIONSHIP_URI_REQUIRED
 

对以前 Windows 版本的支持

此方法的行为和性能在所有受支持的 Windows 版本上都是相同的。 有关详细信息,请参阅使用打包 API 入门适用于 Windows Vista 的平台更新

线程安全性

打包对象不是线程安全的。

有关详细信息,请参阅打包 API 的入门

要求

要求
最低受支持的客户端 Windows 7、带 SP2 的 Windows Vista 和适用于 Windows Vista 的平台更新 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2、Windows Server 2008 SP2 和适用于 Windows Server 2008 的平台更新 [仅限桌面应用]
目标平台 Windows
标头 msopc.h

另请参阅

ECMA-376 OpenXML

外部资源

使用打包 API 入门

IOpcPartUri

开放打包约定基础知识

概述

打包 API 参考

打包 API 示例

打包错误

部件概述

适用于 Windows Vista 的平台更新

引用