ISCardTypeConv::CreateByteBuffer method

[The CreateByteBuffer method is available for use in the operating systems specified in the Requirements section. It is not available for use in Windows Server 2003 with Service Pack 1 (SP1) and later, Windows Vista, Windows Server 2008, and subsequent versions of the operating system. The Smart Card Modules provide similar functionality.]

The CreateByteBuffer method creates a universal buffer of bytes mapped into an IStream (IByteBuffer) object.

The byte buffer created is a stream mapped over a memory block. To access or manage the buffer, use the methods provided by the IStream interface. A unique feature about this array implementation is that when you call the IStream::Release method, the underlying memory will be released for you.

Syntax

HRESULT CreateByteBuffer(
  [in]  DWORD        dwAllocSize,
  [out] LPBYTEBUFFER *ppbyBuff
);

Parameters

dwAllocSize [in]

Size in bytes of the memory to be allocated for the array.

ppbyBuff [out]

Pointer to the IStream object to be returned.

Return value

The possible return values are the following:

Return code Description
S_OK
Memory allocated successfully.
E_INVALIDARG
There is something wrong with one or more of the parameters passed into the function.
E_OUTOFMEMORY
Not enough free memory to satisfy request.

 

Remarks

Memory allocated is movable. Use the IStream::Release method to free the memory.

To create a typical C/C++ byte array, call CreateByteArray.

To create an Automation SAFEARRAY of unsigned characters (bytes), call CreateSafeArray.

Requirements

Requirement Value
Minimum supported client
Windows XP [desktop apps only]
Minimum supported server
Windows Server 2003 [desktop apps only]
End of client support
Windows XP
End of server support
Windows Server 2003
Header
Scarddat.h
Type library
Scarddat.tlb
DLL
Scardssp.dll
IID
IID_ISCardTypeConv is defined as 53B6AA63-3F56-11D0-916B-00AA00C18068

See also

ISCardTypeConv

Smart Card Return Values

CreateByteArray

CreateSafeArray