INSSBuffer.GetBufferAndLength (C#)
The GetBufferAndLength method retrieves the allocated buffer and the length of the data segment that can be loaded into it.
void INSSBuffer.GetBufferAndLength(
IntPtr ppbBuffer,
ref uint pdwLength
);
Arguments
IntPtr containing the allocated buffer. |
|
Reference to an uint containing the size of the allocated buffer in bytes. |
Return Value
This method does not return a value.
If this method fails, it throws an exception.
Number |
Description |
---|---|
0x80070057 |
ppbBuffer or pdwLength is null. |
Remarks
You can use the IWMSBufferAllocatorIWMSBufferAllocator Object (C#) to allocate the buffer.
Example
// Declare variables.
IntPtr pbBuffer;
uint pdwLength;
byte[] Bytes;
// Retrieve a pointer to the buffer and convert it to an array of bytes.
// The pBuffer pointer is user-defined.
pBuffer.GetBufferAndLength(pbBuffer, pdwLength);
Bytes = Array.CreateInstance(GetType(byte), Convert.ToInt32(pdwLength));
Marshal.Copy(pPlsBuf, Bytes, 0, Convert.ToInt32(pdwLength));
Requirements
Reference: Add a reference to Microsoft.WindowsMediaServices.
Namespace: Microsoft.WindowsMediaServices.Interop.
Assembly: Microsoft.WindowsMediaServices.dll.
Library: WMSServerTypeLib.dll.
Platform: Windows Server 2003, Enterprise Edition; Windows Server 2003, Datacenter Edition; Windows Server 2008.