IFillLockBytes
This interface enables downloading code to write data asynchronously to a structured storage byte array. When the downloading code has new data available, it calls IFillLockBytes::FillAppend or IFillLockBytes::FillAt to write the data to the byte array. An application attempting to access this data, through calls to the ILockBytes interface, can do so even as the downloader continues to make calls to IFillLockBytes. If the application attempts to access data that has not already been downloaded through a call to IFillLockBytes, then ILockBytes returns a new error, E_PENDING.
When to Implement
You normally would not implement this interface. A system developer that wants to provide asynchronous storage for a protocol other than HTTP might implement IFillLockBytes as part of the transport layer.
When to Use
You normally would not call this interface. Monikers or other downloading code that provide asynchronous storage use this interface to fill the byte array as data becomes available.
Methods in Vtable Order
IUnknown Methods | Description |
---|---|
QueryInterface | Returns pointers to supported interfaces. |
AddRef | Increments the reference count. |
Release | Decrements the reference count. |
IFillLockBytes Methods | Description |
---|---|
FillAppend | Writes a new block of bytes to end of byte array. |
FillAt | Writes a new block of bytes to specified location in byte array. |
SetFillSize | Sets expected size of byte array. |
Terminate | Notifies byte array wrapper of successful or unsuccessful termination of download. |
Requirements
Runs On | Versions | Defined in | Include | Link to |
---|---|---|---|---|
Windows CE OS | 3.0 and later | Objidl.h |
Note This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.
See Also
IConnectionPoint, IConnectionPointContainer, ILockBytes, IStorage, IStream
Last updated on Tuesday, July 13, 2004
© 1992-2000 Microsoft Corporation. All rights reserved.