IStreamConcatenate::Initialize method (imapi2.h)

Initializes this stream from two input streams.

Syntax

HRESULT Initialize(
  [in] IStream *stream1,
  [in] IStream *stream2
);

Parameters

[in] stream1

An IStream interface of the first stream to add to this stream.

[in] stream2

An IStream interface of the second stream to add to this stream.

Return value

S_OK is returned on success, but other success codes may be returned as a result of implementation. The following error codes are commonly returned on operation failure, but do not represent the only possible error values:

Return code Description
E_POINTER
Pointer is not valid.

Value: 0x80004003

E_OUTOFMEMORY
Failed to allocate the required memory.

Value: 0x8007000E

E_INVALIDARG
One or more arguments are not valid.

Value: 0x80070057

Remarks

When using the IStreamConcatenate interface, the following scenarios will result in undefined behaviors, and should be avoided:

  • Each partial stream composing the MsftStreamConcatenate object is actually the same stream.
  • Any of the concatenated streams are modified (read from, written to, or seeked on) outside of IMAPI.

Requirements

Requirement Value
Minimum supported client Windows Vista, Windows XP with SP2 [desktop apps only]
Minimum supported server Windows Server 2003 [desktop apps only]
Target Platform Windows
Header imapi2.h

See also

IStreamConcatenate

IStreamConcatenate::Initialize2