IByteBuffer::Clone 方法

[ Clone 方法可用于“要求”部分中指定的操作系统。 它不适用于 Windows Server 2003 Service Pack 1 (SP1) 及更高版本、Windows Vista、Windows Server 2008 和操作系统的后续版本。 IStream 接口提供类似的功能。]

Clone 方法使用自己的查找指针创建一个新的 对象,该对象引用与原始 IByteBuffer 对象相同的字节。

语法

HRESULT Clone(
  [out] LPBYTEBUFFER *ppByteBuffer
);

parameters

ppByteBuffer [out]

成功后,指向指向新流对象的 IByteBuffer 指针的位置。 使用 完 IByteBuffer 指针后,通过调用 IUnknown::Release 函数释放它。 如果发生错误,此参数为 NULL

返回值

返回值为 HRESULT。 值 S_OK 表示调用成功。

备注

此方法创建一个新的流对象,用于访问相同的字节,但使用单独的查找指针。 新的流对象将看到与源流对象相同的数据。 写入一个对象的更改会立即显示在另一个对象中。 范围锁定在流对象之间共享。

克隆流实例中查找指针的初始设置与克隆操作时原始流中查找指针的当前设置相同。

示例

以下示例演示如何克隆 IByteBuffer 接口。

HRESULT  hr;

// Clone the buffer.
hr = pIByteBuff->Clone(&pIByteClone);
if (FAILED(hr))
  printf("Failed IByteBuffer::Clone\n");

要求

要求
最低受支持的客户端
Windows XP [仅限桌面应用]
最低受支持的服务器
Windows Server 2003 [仅限桌面应用]
终止客户端支持
Windows XP
终止服务器支持
Windows Server 2003
标头
Scardssp.h
类型库
Scardssp.tlb
DLL
Scardssp.dll
IID
IID_IByteBuffer定义为 E126F8FE-A7AF-11D0-B88A-00C04FD424B9