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 typically 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 typically 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 method Description
QueryInterface Returns pointers to supported interfaces.
AddRef Increments the reference count.
Release Decrements the reference count.
Method 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.

Remarks

To determine whether the platform supports this interface, see Determining Supported COM APIs.

Requirements

OS Versions: Windows CE 3.0 and later.
Header: Objidl.h, Objidl.idl.
Link Library: Ole32.lib, Uuid.lib.

See Also

IFillLockBytes Implementation | IConnectionPoint | IConnectionPointContainer | ILockBytes | IStorage | IStream

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.