Share via


URLOpenStream

A version of this page is also available for

Windows Embedded CE 6.0 R3

4/8/2010

This function creates a push type stream object from a URL.

Syntax

HRESULT URLOpenStream(
  LPUNKNOWN pCaller,
  LPCSTR szURL,
  DWORD dwReserved,
  LPBINDSTATUSCALLBACK lpfnCB
);

Parameters

  • pCaller
    Address of the controlling IUnknown interface of the calling Microsoft ActiveX component, if the caller is an ActiveX component. If the caller is not an ActiveX component, this value can be set to NULL. Otherwise, the caller is a Component Object Model (COM) object that is contained in another component, such as an ActiveX Control within the context of an HTML page. This parameter represents the outermost IUnknown of the calling component. The function attempts the download within the context of the ActiveX client framework and allows the caller's container to receive callbacks on the progress of the download.
  • szURL
    String containing the URL to be converted to a stream object. This parameter cannot be NULL.
  • dwReserved
    Reserved. Must be zero.
  • lpfnCB
    Address of the caller's IBindStatusCallback interface, on which URLOpenStream calls IBindStatusCallback::OnDataAvailable when data arrives from the Internet. IBindStatusCallback::OnDataAvailable can return E_ABORT to abort the download.

Return Value

Returns S_OK if the operation succeeded or E_OUTOFMEMORY if there was insufficient memory to complete the operation.

Remarks

The data is downloaded from the Internet as fast as possible. When data is available, it is pushed at the client through a notification callback.

URLOpenStream automatically decompresses the stream that it creates. Urlmon internally supports gzip and deflate compression formats. Additional formats can be supported if the associated custom mime filters are installed.

Requirements

Header urlmon.h, urlmon.idl
Library urlmon.lib
Windows Embedded CE Windows CE .NET 4.0 and later
Windows Mobile Windows Mobile Version 5.0 and later