ISCardTypeConv::ConvertSafeArrayToByteBuffer method
[The ConvertSafeArrayToByteBuffer 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 ConvertSafeArrayToByteBuffer method converts a byte array defined as a SAFEARRAY into a universal buffer of bytes (IStream 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 ConvertSafeArrayToByteBuffer(
[in] LPSAFEARRAY pbyArray,
[out] LPBYTEBUFFER *ppbyBuff
);
Parameters
-
pbyArray [in]
-
Pointer to the SAFEARRAY to be converted.
-
ppbyBuff [out]
-
Pointer to the IStream object to be returned.
Return value
The method returns one of the following possible values:
Return code | Description |
---|---|
|
Memory allocated successfully. |
|
There is something wrong with one or more of the parameters passed into the function. |
|
A parameter of pointer type was incorrect. |
|
Not enough free memory to satisfy request. |
Remarks
Memory allocated is moveable. Use the IStream::Release method to free the memory.
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 |
|
Type library |
|
DLL |
|
IID |
IID_ISCardTypeConv is defined as 53B6AA63-3F56-11D0-916B-00AA00C18068 |
See also