Kernel Buffer Marshaling Classes

Other versions of this page are also available for the following:

Windows Mobile Not SupportedWindows Embedded CE Supported

8/28/2008

The following table shows the kernel buffer marshaling wrapper classes and the purpose of each.

Class Description

AsynchronousBuffer_t

Provides a wrapper for CeAllocAsynchronousBuffer and CeFreeAsynchronousBuffer. It is used with pointers already access-checked or marshaled by the kernel that require asynchronous buffer access. It should only be used in kernel mode. For information about how to access a buffer asynchronously in user mode, see CeAllocAsynchronousBuffer.

DuplicatedBuffer_t

Provides a wrapper for CeAllocDuplicateBuffer and CeFreeDuplicateBuffer. It should only be called with API parameters that have already been access-checked and automatically marshaled, if necessary, by the kernel. All other duplication can be done by MarshalledBuffer_t.

MarshalledBuffer_t

Provides a wrapper for CeOpenCallerBuffer, CeCloseCallerBuffer, CeAllocAsynchronousBuffer, and CeFreeAsynchronousBuffer. Use it only with embedded pointers that have not already been access-checked or marshaled by the kernel. To duplicate a buffer that has already been marshaled, use DuplicatedBuffer_t. To obtain asynchronous access to a buffer that has already been marshaled, use AsynchronousBuffer_t.

See Also

Reference

Kernel Buffer Marshaling Classes

Other Resources

Kernel Migration