IOpcPartSet::CreatePart 方法 (msopc.h)

创建表示部件的部件对象,并将指向该对象的 IOpcPart 接口的指针添加到集。

语法

HRESULT CreatePart(
  [in]          IOpcPartUri             *name,
  [in]          LPCWSTR                 contentType,
  [in]          OPC_COMPRESSION_OPTIONS compressionOptions,
  [out, retval] IOpcPart                **part
);

参数

[in] name

指向部件 URI 对象的 IOpcPartUri 接口的指针,该对象表示部件的部件名称。

若要创建实现 IOpcPartUri 接口) 表示部件名称的部件 URI 对象 (,请调用 IOpcFactory::CreatePartUri 方法。

[in] contentType

部件内容的媒体类型。

[in] compressionOptions

一个 值,该值描述压缩部件的部件内容的方式。

[out, retval] part

指向表示部件的新 IOpcPart 的指针。

此参数不能为 NULL

返回值

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

返回代码/值 说明
S_OK
方法成功。
E_POINTER
name 参数为 NULL
E_INVALIDARG
compressionOptions 参数中传递的值不是有效的OPC_COMPRESSION_OPTIONS枚举值。
OPC_E_DUPLICATE_PART
0x8051000B
当前包中已存在具有指定部件名称的部件。
OPC_E_INVALID_CONTENT_TYPE
0x80510044
内容类型不符合 RFC 2616:HTTP/1.1 (http://www.w3.org/Protocols/rfc2616/rfc2616.html) 和 OPC 中指定的有效媒体类型的规则。
OPC_E_UNEXPECTED_CONTENT_TYPE
0x80510005
部件的内容类型不同于 OPC、 ECMA-376 第 2 部分) 中指定的预期内容类型 (,或者部件内容与部件的内容类型不匹配。
包消耗错误
包使用错误组中HRESULT 错误代码。
部件 URI 错误
部件 URI 错误组中HRESULT 错误代码。

注解

创建部件对象并将指向它的指针添加到集时,在序列化包时序列化它所代表的部件。

此方法无法创建表示关系部件的部件对象。

如果在创建部件对象之前压缩部件内容,请在 compressionOptions 参数中传递OPC_COMPRESSION_NONE值。

已压缩的部件内容不会压缩更多。

IOpcPart 提供对部件属性的访问。 有关这些属性的详细信息,请参阅 部件概述IOpcPart 主题。

线程安全性

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

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

要求

要求
最低受支持的客户端 Windows 7 [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 R2 [仅限桌面应用]
目标平台 Windows
标头 msopc.h

另请参阅

ECMA-376 OpenXML

外部资源

使用打包 API 入门

IOpcFactory::CreatePartUri

IOpcPartSet

OPC_COMPRESSION_OPTIONS

概述

打包 API 参考

打包 API 示例

打包错误

部件概述

RFC 2616:HTTP/1.1

引用