Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.
A version of this page is also available for
4/8/2010

This method writes a new block of data to a specified location in the byte array.

Syntax

HRESULT FillAt(
  ULARGE_INTEGER 
uIOffset,
  void const* 
pv,
  ULONG 
cb,
  ULONG* 
pcbWritten 
);

Parameters

uIOffset

[in] The offset, expressed in number of bytes, from the first element of the byte array.

pv

[in] Pointer to the data to be written at the location specified by uIOffset.

cb

[in] Size of pvin bytes.

pcbWritten

[out] Number of bytes that were successfully written.

Return Value

This function supports the standard return values E_OUTOFMEMORY, E_UNEXPECTED, E_INVALIDARG, and E_FAIL in addition to the following:

E_NOTIMPL

The byte array does not support the FillAtmethod.

Remarks

The FillAtmethod is used for nonsequential downloading (for example, HTTP byte range requests).

In nonsequential downloading the caller specifies ranges in the byte array where various blocks of data are to be written. Subsequent calls by the compound file implementation to ILockBytes::ReadAtare passed by the byte array wrapper object's own implementation of ILockBytesto the underlying byte array.

This method is not currently implemented and will return E_NOTIMPL.

The system-supplied IFillLockBytesimplementation does not support FillAtand returns E_NOTIMPL.

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

Requirements

Header objidl.h, objidl.idl
Library ole32.lib, uuid.lib
Windows Embedded CE Windows CE 3.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also