## Interfaces

### IWebBrowser

Designates an interface that applications can use to implement an instance of the Web browser control in an application. By implementing a Web browser control, an application can allows the user to browse sites on the Internet's World Wide Web, as well as objects in the Windows name space such as files, folders, disk drives, and locations on the network.

Methods in Vtable Order

IUnknown Methods | Description
QueryInterface | Returns pointers to supported interfaces.
AddRef | Increments the reference count.
Release | Decrements the reference count.

IDispatch Methods | Description
GetTypeInfoCount | Retrieves the number of type information interfaces that the Web browser control provides.
GetTypeInfo | Retrieves a type information object, which can be used to get the type information for an interface.
GetIDsOfNames | Maps a single member and an optional set of argument names to a corresponding set of integer DISPIDs, which may be used in subsequent calls to IDispatch::Invoke.
Invoke | Provides access to properties and methods exposed by an object.

IWebBrowser Methods | Description
GoBack | Navigates to the previous item in the history list.
GoForward | Navigates to the next item in the history list.
GoHome | Navigates to the current home or start page.
GoSearch | Navigates to the current search page.
Navigate | Navigates to a resource identified by a Universal Resource Locator (URL)
Refresh | Reloads the current file.
Refresh2 | Reloads the current file and optionally prevents the pragma:noCache header from being sent.
Stop | Stops opening a file.
get_Application | Returns an Application object representing the application that contains the Web browser control.
get_Parent | Returns the form on which the Web browser control is located.
get_Container | Returns the container of the Web browser control, if any.
get_Document | Returns the active document.
get_TopLevelContainer | Returns a value indicating whether the current object is the top level container of the Web browser control.
get_Type | Returns the type of the current contained object
get_Left | Returns the distance between the internal left edge of the Web browser control and the left edge of its container.
put_Left | Sets the distance between the internal left edge of the Web browser control and the left edge of its container.
get_Top | Returns the distance between the internal top edge of the Web browser control and the top edge of its container.
put_Top | Sets the distance between the internal top edge of the Web browser control and the top edge of its container.
get_Width | Returns the horizontal dimension of the frame window that contains the Web browser control.
put_Width | Sets the horizontal dimension of the frame window that contains the Web browser control.
get_Height | Returns the vertical dimension of the frame window that contains the Web browser control.
put_Height | Sets the vertical dimension of the frame window that contains the Web browser control.
get_LocationName | Returns the name of the resource that the Web browser control or Internet Explorer is currently displaying.
get_LocationURL | Returns the URL of the resource that the Web browser control or Internet Explorer is currently displaying.
get_Busy | Returns a value indicating whether a download or other activity is still in progress.

#### IWebBrowser::GoBack

    HRESULT GoBack(void);

Navigates backward one item in the history list.

- Returns S_OK to indicate that the operation was successful.

See also IWebBrowser::GoForward, IWebBrowser::GoHome, IWebBrowser::GoSearch

#### IWebBrowser::GoForward

    HRESULT GoForward(void);

Navigates forward one item in the history list.

- Returns S_OK to indicate that the operation was successful.

See also IWebBrowser::GoBack, IWebBrowser::GoHome, IWebBrowser::GoSearch

#### IWebBrowser::GoHome

    HRESULT GoHome(void);

Navigates to the current home or start page, as specified in the Internet Explorer Options dialog box and Internet Control Panel.

- Returns S_OK to indicate that the operation was successful.

See also IWebBrowser::GoBack, IWebBrowser::GoForward, IWebBrowser::GoSearch

#### IWebBrowser::GoSearch

    HRESULT GoSearch(void);

Navigates to the current search page, as specified in the Internet Explorer Options dialog box and Internet Control Panel.

- Returns S_OK to indicate that the operation was successful.

See also IWebBrowser::GoBack, IWebBrowser::GoForward, IWebBrowser::GoHome

#### IWebBrowser::Navigate

    HRESULT IWebBrowser::Navigate(
        BSTR URL,                     // URL to navigate to
        VARIANT FAR* Flags,           // address of option flags
        VARIANT FAR* TargetFrameName, // address of frame name for resource
        VARIANT FAR* PostData,        // address of HTTP POST data
        VARIANT FAR* Headers,         // address of HTTP headers
    );

Navigates to a resource identified by a Universal Resource Locator (URL), or to the file identified by a full path.

- Returns one of these values:

  S_OK | The operation was successful.
  E_INVALIDARG | One or more parameters are invalid.
  E_OUTOFMEMORY | Out of memory.

URL
  A caller-allocated string that contains the URL to navigate to, or the full path of the file to display.
Flags
  Address of a variable that specifies whether to add the resource to the history list, whether to read or write from the cache, and whether to display the resource in a new window. The variable can be a combination of the values defined by the BrowserNavConstants enumeration.
TargetFrameName
  Address of a string that contains the name of the frame in which to display the resource.
PostData
  Address of data to send with the HTTP POST transaction. For example, the POST transaction is used to send data gathered by an HTML form. If this parameter does not specify any post data, the IWebBrowser::Navigate function issues an HTTP GET transaction. This parameter is ignored if URL is not an HTTP URL.
Headers
  Address of a value that specifies the HTTP headers to send to the server. These headers are added to the default Internet Explorer headers. The headers can specify such things as the action required of the server, the type of data being passed to the server, or a status code. This parameter is ignored if URL is not an HTTP URL.

The post data specified by PostData is passed as a SAFEARRAY. The variant should be of type VT_ARRAY and point to a SAFEARRAY. The SAFEARRAY should be of element type VT_UI1, dimension one, and have an element count equal to the number of bytes of post data.

See also DWebBrowserEvents::BeforeNavigate, DWebBrowserEvents::FrameBeforeNavigate, DWebBrowserEvents::FrameNavigateComplete, DWebBrowserEvents::NavigateComplete, IWebBrowser::Navigate

#### IWebBrowser::Refresh

    HRESULT Refresh(void);

Reloads the file that the Web browser control is currently displaying.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.

See also Refresh2

#### IWebBrowser::Refresh2

    HRESULT Refresh(
        VARIANT FAR* Level  // level of refresh to perform
    );

Reloads the file that the Web browser control is currently displaying. Unlike the IWebBrowser::Refresh function, this function contains a parameter that specifies the refresh level.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.

Level
  Address of a variable that specifies the level of refresh operation to perform. The variable can contain a type defined by the RefreshConstants enumeration.

See also RefreshConstants

#### IWebBrowser::Stop

    HRESULT Stop(void);

Cancels any pending navigation or download operation, and stops any dynamic page elements such as background sounds and animations.

- Returns S_OK to indicate that the operation was successful.

See also DWebBrowserEvents::BeforeNavigate, DWebBrowserEvents::DownloadBegin, DWebBrowserEvents::FrameBeforeNavigate, DWebBrowserEvents::ProgressChange, IWebBrowser::Refresh

#### IWebBrowser::get_Application

    HRESULT get_Application(
        IDispatch * FAR* ppDisp  // address of variable for IDispatch pointer
    );

Retrieves the automation object supported by the application that contains the Web browser control if the object is accessible; otherwise, this property returns the Web browser control's automation object.

- Returns one of these values:

  S_OK | The operation was successful.
  E_NOINTERFACE | The interface is not supported.

ppDisp
  Address of a variable that receives the pointer to the application's IDispatch interface.

See also IWebBrowser::get_Container, IWebBrowser::get_Document, IWebBrowser::get_Parent

#### IWebBrowser::get_Busy

    HRESULT get_Busy(
        VARIANT_BOOL FAR* pBool  // address of variable for busy flag
    );

Discovers whether the Web browser control is engaged in a navigation or downloading operation.

pBool
  Address of a variable that receives TRUE if the Web browser control is busy, or FALSE otherwise.

#### IWebBrowser::get_Container

    HRESULT get_Container(
        IDispatch * FAR* ppDisp  // address of variable for IDispatch pointer
    );

Retrieves an object that evalutate to the container of the Web browser control, if any.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.
  E_NOINTERFACE | The interface is not supported.

ppDisp
  Address of a variable that receives the pointer to the container's IDispatch interface.

See also IWebBrowser::get_Application, IWebBrowser::get_Document, IWebBrowser::get_Parent

#### IWebBrowser::get_Document

    HRESULT get_Document(
        IDispatch * FAR* ppDisp  // address of variable for IDispatch pointer
    );

Retrieves the automation object of the active document, if any.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.
  E_INVALIDARG | One or more parameters are invalid.
  E_NOINTERFACE | The interface is not supported.

ppDisp
  Address of a variable that receives the pointer to the document object's IDispatch interface.

See also IWebBrowser::get_Application, IWebBrowser::get_Container, IWebBrowser::get_Parent

#### IWebBrowser::get_Height

    HRESULT get_Height(
        long FAR* pl  // address of variable for height
    );

Retrieves the vertical dimension of the frame window that contains the Web browser control.

- Returns S_OK to indicate that the operation was successful.

pl
  Address of a variable that receives the frame window height, in pixels.

See also IWebBrowser::put_Height, IWebBrowser::get_Width

#### IWebBrowser::put_Height

    HRESULT put_Height(
        long Height  // frame window height
    );

Sets the vertical dimension of the frame window that contains the Web browser control.

- Returns S_OK to indicate that the operation was successful.

Height
  New height, in pixels, of the frame window.

See also IWebBrowser::get_Height, IWebBrowser::put_Width

#### IWebBrowser::get_Left

    HRESULT get_Left(
        long FAR* pl  // address of variable for left-edge distance
    );

Retrieves the distance between the internal left edge of the Web browser control and the left edge of its container.

- Returns S_OK to indicate that the operation was successful.

pl
  Address of a variable that recieves the left-edge distance, in pixels.

See also IWebBrowser::get_Top, IWebBrowser::put_Left

#### IWebBrowser::put_Left

    HRESULT put_Left(
        long Left  // left-edge distance
    );

Sets the distance between the internal left edge of the Web browser control and the left edge of its container.

- Returns S_OK to indicate that the operation was successful.

Left
  Left-edge distance, in pixels.

See also IWebBrowser::get_Left, IWebBrowser::put_Top

#### IWebBrowser::get_LocationName

    HRESULT get_LocationName(
        BSTR FAR* pbstrLocationName  // address of buffer for location name
    );

Retrieves the name of the resource that the Web browser control is currently displaying. If the resource is an HTML page on the World Wide Web, the name is the title of that page. If the resource is a folder or file on the network or local computer, the name is the UNC or full path of the folder or file.

- Returns one of these values:

  S_OK | The operation was successful.
  E_OUTOFMEMORY | Out of memory.

pbstrLocationName
  Address of a caller-allocated buffer that receives the name of the location.

See also IWebBrowser::get_LocationURL

#### IWebBrowser::get_LocationURL

    HRESULT get_LocationURL(
        BSTR FAR* pbstrLocationURL  // address of buffer for location URL
    );

Retrieves the URL of the resource that the Web browser control is currently displaying. If the resource is a folder or file on the network or local computer, the name is the UNC or full path of the folder or file.

- Returns one of these values:

  S_OK | The operation was successful.
  E_OUTOFMEMORY | Out of memory.

pbstrLocationURL
  Address of a caller-allocated buffer that receives the URL.

See also IWebBrowser::get_LocationName

#### IWebBrowser::get_Parent

    HRESULT get_Parent(
        IDispatch * FAR* ppDisp  // address of variable for IDispatch pointer
    );

Retrieves a pointer to the IDispatch interface of the object that is the parent of the Web browser control.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.
  E_NOINTERFACE | The interface is not supported.

ppDisp
  Address of a variable that receives the pointer to the parent object's IDispatch interface.

See also IWebBrowser::get_Application, IWebBrowser::get_Container, IWebBrowser::get_Document

#### IWebBrowser::get_Top

    HRESULT get_Top(
        long FAR* pl  // address of variable for top-edge distance
    );

Retrieves the distance between the internal top edge of the Web browser control and the top edge of its container.

- Returns S_OK to indicate that the operation was successful.

pl
  Address of a variable that receives the top-edge distance, in pixels.

See also IWebBrowser::get_Left, IWebBrowser::put_Top

#### IWebBrowser::put_Top

    HRESULT put_Top(
        long Top  // top-edge distance
    );

Sets the distance between the internal top edge of the Web browser control and the top edge of its container.

- Returns S_OK to indicate that the operation was successful.

Top
  Top-edge distance, in pixels.

See also IWebBrowser::get_Top, IWebBrowser::put_Left

#### IWebBrowser::get_TopLevelContainer

    HRESULT get_TopLevelContainer(
        VARIANT_BOOL FAR* pBool)  // address of variable for top-level flag

Determines if the container of the Web browser control is a top-level container.

- Returns one of these values:

  S_OK | The operation was successful.
  E_INVALIDARG | Invalid parameter.

pBool
  Address of variable that receives TRUE if the container is a top-level container, or FALSE otherwise.

#### IWebBrowser::get_Type

    HRESULT get_Type(
        BSTR FAR* pbstrType  // address of buffer for type
    );

Retrieves the type name of the contained document object.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.
  E_OUTOFMEMORY | Out of memory.

pbstrType
  Address of a caller-allocated buffer that receives the type name.

#### IWebBrowser::get_Width

    HRESULT get_Width(
        long FAR* pl  // address of variable for width
    );

Retrieves the horizontal dimension of the frame window that contains the Web browser control.

- Returns S_OK to indicate that the operation was successful.

pl
  Address of a variable that receives the frame window width, in pixels.

See also IWebBrowser::get_Height, IWebBrowser::put_Width

#### IWebBrowser::put_Width

    HRESULT put_Width(
        long Width  // frame window width
    );

Sets the horizontal dimension of the frame window that contains the Web browser control.

- Returns S_OK to indicate that the operation was successful.

Width
  New width, in pixels, of the frame window.

See also IWebBrowser::get_Width, IWebBrowser::put_Height

### IWebBrowserApp

Designates an Automation interface that allows an application to control an instance of the Microsoft Internet Explorer application.

Methods in Vtable Order

IUnknown Methods | Description
QueryInterface | Returns pointers to supported interfaces.
AddRef | Increments the reference count.
Release | Decrements the reference count.

IDispatch Methods | Description
GetTypeInfoCount | Retrieves the number of type information interfaces that the Web browser control provides.
GetTypeInfo | Retrieves a type information object, which can be used to get the type information for an interface.
GetIDsOfNames | Maps a single member and an optional set of argument names to a corresponding set of integer DISPIDs, which may be used in subsequent calls to IDispatch::Invoke.
Invoke | Provides access to properties and methods exposed by an object.

IWebBrowserApp Methods | Description
GoBack | Navigates to the previous item in the history list.
GoForward | Navigates to the next item in the history list.
GoHome | Navigates to the current home or start page.
GoSearch | Navigates to the current search page.
Navigate | Navigates to a resource identified by a Universal Resource Locator (URL)
Refresh | Reloads the current file.
Refresh2 | Reloads the current file and optionally prevents the pragma:noCache header from being sent.
Stop | Stops opening a file.
get_Application | Returns an Application object representing the application that contains the current instance of the Internet Explorer application.
get_Parent | Returns the automation object supported by Internet Explorer.
get_Container | Returns the container of the Web browser control.
get_Document | Returns the active document.
get_TopLevelContainer | Returns a value indicating whether the current object is the top level container of the Web browser control.
get_Type | Returns the type of the current contained object
get_Left | Returns the distance between the internal left edge of the Web browser control and the left edge of its container.
put_Left | Sets the distance between the internal left edge of the Web browser control and the left edge of its container.
get_Top | Returns the distance between the internal top edge of the Web browser control and the top edge of its container.
put_Top | Sets the distance between the internal top edge of the Web browser control and the top edge of its container.
get_Width | Returns the horizontal dimension of the frame window that contains the Web browser control.
put_Width | Sets the horizontal dimension of the frame window that contains the Web browser control.
get_Height | Returns the vertical dimension of the frame window that contains the Web browser control.
put_Height | Sets the vertical dimension of the frame window that contains the Web browser control.
get_LocationName | Returns the name of the resource that Internet Explorer is currently displaying.
get_LocationURL | Returns the URL of the resource that Internet Explorer is currently displaying.
get_Busy | Returns a value indicating whether a download or other activity is still in progress.
Quit | Closes the Internet Explorer application.
ClientToWindow | Converts the client coordinates of a point to window coordinates.
PutProperty | Sets the value of a property associated with the given object.
GetProperty | Retrieves the current value of a property associated with the given object.
get_Name | Returns the name of the object that contains the Web browser control.
get_HWND | Returns the window handle of Internet Explorer's main window.
get_FullName | Returns the full pathname of the file that Internet Explorer is currently displaying.
get_Path | Returns a string that evaluates to the full pathname of the resource that Internet Explorer is currently displaying.
get_Visible | Returns a value indicating whether Internet Explorer is visible or hidden.
put_Visible | Sets a value indicating whether Internet Explorer is visible or hidden.
get_StatusBar | Returns a value that indicates whether the status bar is visible.
put_StatusBar | Sets a value that determines whether the status bar is visible.
get_StatusText | Returns the text of the status bar.
put_StatusText | Sets the text for the status bar.
get_ToolBar | Returns a value that indicates whether the toolbar is visible.
put_ToolBar | Sets a value that determines whether the toolbar is visible.
get_MenuBar | Returns a value that indicates whether the menu bar is visible.
put_MenuBar | Sets a value that determines whether the menu bar is visible.
get_FullScreen | Returns a value indicating whether Internet Explorer is in full screen or normal window mode.
put_FullScreen | Sets a value that determines whether Internet Explorer is in full screen or normal window mode.

#### IWebBrowserApp::ClientToWindow

    HRESULT ClientToWindow(
        int FAR* pcx,  // x-coordinate of point
        int FAR* pcy   // y-coordinate of point
    );

Converts the client coordinates of a point to window coordinates. Client coordinates are relative to the upper-left corner of the client area; window coordinates are relative to the upper-left corner of a window.

- Returns S_OK to indicate that the operation was successful.

pcx
  X-coordinate of the point to convert, in client coordinates. When ClientToWindow returns, this variable contains the x-coordinate of the point in window coordinates.
pcy
  Y-coordinate of the point to convert, in client coordinates. When ClientToWindow returns, this variable contains the y-coordinate of the point in window coordinates.

#### IWebBrowserApp::GetProperty

    HRESULT GetProperty(
        BSTR szProperty,       // name of property to retrieve
        VARIANT FAR* pvtValue  // address of variable for property value
    );

Retrieves the value of a property associated with the given object.

- Returns one of these values:

  S_OK | The operation was successful.
  E_INVALIDARG | One or more parameters are invalid.

szProperty
  A caller-allocated buffer that contains the name of the property to retrieve.
pvtValue
  Address of a variable that receives the value associated with the given property.

See also IWebBrowserApp::PutProperty

#### IWebBrowserApp::GoBack

    HRESULT GoBack(void);

Navigates backward one item in the history list.

- Returns S_OK to indicate that the operation was successful.

See also IWebBrowserApp::GoForward, IWebBrowserApp::GoHome, IWebBrowserApp::GoSearch

#### IWebBrowserApp::GoForward

    HRESULT GoForward(void);

Navigates forward one item in the history list.

- Returns S_OK to indicate that the operation was successful.

See also IWebBrowserApp::GoBack, IWebBrowserApp::GoHome, IWebBrowserApp::GoSearch

#### IWebBrowserApp::GoHome

    HRESULT GoHome(void);

Navigates to the current home or start page, as specified in the Internet Explorer Options dialog box and Internet Control Panel.

- Returns S_OK to indicate that the operation was successful.

See also IWebBrowserApp::GoBack, IWebBrowserApp::GoForward, IWebBrowserApp::GoSearch

#### IWebBrowserApp::GoSearch

    HRESULT GoSearch(void);

Navigates to the current search page, as specified in the Internet Explorer Options dialog box and Internet Control Panel.

- Returns S_OK to indicate that the operation was successful.

See also IWebBrowserApp::GoBack, IWebBrowserApp::GoForward, IWebBrowserApp::GoHome

#### IWebBrowserApp::Navigate

    HRESULT IWebBrowserApp::Navigate(
        BSTR URL,                     // URL to navigate to
        VARIANT FAR* Flags,           // address of option flags
        VARIANT FAR* TargetFrameName, // address of frame name for resource
        VARIANT FAR* PostData,        // address of HTTP POST data
        VARIANT FAR* Headers,         // address of HTTP headers
    );

Navigates to a resource identified by a Universal Resource Locator (URL), or to the file identified by a full path.

- Returns one of these values:

  S_OK | The operation was successful.
  E_INVALIDARG | One or more parameters are invalid.
  E_OUTOFMEMORY | Out of memory.

URL
  A caller-allocated string that contains the URL to navigate to, or the full path of the file to display.
Flags
  Address of a variable that specifies whether to add the resource to the history list, whether to read or write from the cache, and whether to display the resource in a new window. The variable can be a combination of the values defined by the BrowserNavConstants enumeration.
TargetFrameName
  Address of a string that contains the name of the frame in which to display the resource.
PostData
  Address of data to send with the HTTP POST transaction. For example, the POST transaction is used to send data gathered by an HTML form. If this parameter does not specify any post data, the IWebBrowser::Navigate function issues an HTTP GET transaction. This parameter is ignored if URL is not an HTTP URL.
Headers
  Address of a value that specifies the HTTP headers to send to the server. These headers are added to the default Internet Explorer headers. The headers can specify such things as the action required of the server, the type of data being passed to the server, or a status code. This parameter is ignored if URL is not an HTTP URL.

The post data specified by PostData is passed as a SAFEARRAY. The variant should be of type VT_ARRAY and point to a SAFEARRAY. The SAFEARRAY should be of element type VT_UI1, dimension one, and have an element count equal to the number of bytes of post data.

See also DWebBrowserEvents::BeforeNavigate, DWebBrowserEvents::FrameBeforeNavigate, DWebBrowserEvents::FrameNavigateComplete, DWebBrowserEvents::NavigateComplete

#### IWebBrowserApp::PutProperty

    HRESULT PutProperty(
        BSTR szProperty,   // name of property to set
        VARIANT vtValue    // address of variable for property value
    );

Sets the value of a property associated with the given object.

- Returns one of these values:

  S_OK | The operation was successful.
  E_INVALIDARG | One or more parameters are invalid.
  E_OUTOFMEMORY | Out of memory.

szProperty
  A caller-allocated buffer that contains the name of the property to set.
tvValue
  New value for the given property.

See also IWebBrowserApp::GetProperty

#### IWebBrowserApp::Quit

    HRESULT Quit(void);

Closes the Internet Explorer application.

- Returns S_OK to indicate that the operation was successful.

#### IWebBrowserApp::Refresh

    HRESULT Refresh(void);

Reloads the file that Internet Explorer is currently displaying.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.

#### IWebBrowserApp::Refresh2

    HRESULT Refresh(
        VARIANT FAR* Level  // level of refresh to perform
    );

Reloads the file that Internet Explorer is currently displaying. Unlike the IWebBrowserApp::Refresh function, this function contains a parameter that specifies the refresh level.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.

Level
  Address of a variable that specifies the level of refresh operation to perform. The variable can contain a type defined by the RefreshConstants enumeration.

See also RefreshConstants

#### IWebBrowserApp::Stop

    HRESULT Stop(void);

Cancels any pending navigation or download operation, and stops any dynamic page elements such as background sounds and animations.

- Returns S_OK to indicate that the operation was successful.

See also DWebBrowserEvents::BeforeNavigate, DWebBrowserEvents::DownloadBegin, DWebBrowserEvents::FrameBeforeNavigate, DWebBrowserEvents::ProgressChange, IWebBrowserApp::Quit, IWebBrowserApp::Refresh

#### IWebBrowserApp::get_Application

    HRESULT get_Application(
        IDispatch * FAR* ppDisp  // address of variable for IDispatch pointer
    );

Retrieves the Automation interface supported by the Internet Explorer application.

- Returns one of these values:

  S_OK | The operation was successful.
  E_NOINTERFACE | The interface is not supported.

ppDisp
  Address of a variable that receives the pointer to the application's IDispatch interface.

See also IWebBrowserApp::get_Container, IWebBrowserApp::get_Document, IWebBrowserApp::get_Parent

#### IWebBrowserApp::get_Busy

    HRESULT get_Busy(
        VARIANT_BOOL FAR* pBool  // address of variable for busy flag
    );

Discovers whether Internet Explorer is engaged in a downloading operation or other activity.

pBool
  Address of a variable that receives TRUE if Internet Explorer is busy, or FALSE if not.

#### IWebBrowserApp::get_Container

    HRESULT get_Container(
        IDispatch * FAR* ppDisp  // address of variable for IDispatch pointer
    );

Retrieves a pointer to the IDispatch interface of the container.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.
  E_NOINTERFACE | The interface is not supported.

ppDisp
  Address of a variable that receives the pointer to the container's IDispatch interface.

See also IWebBrowserApp::get_Application, IWebBrowserApp::get_Document, IWebBrowserApp::get_Parent

#### IWebBrowserApp::get_Document

    HRESULT get_Document(
        IDispatch * FAR* ppDisp  // address of variable for IDispatch pointer
    );

Retrieves a pointer to the IDispatch interface of the active document object.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.
  E_INVALIDARG | One or more parameters are invalid.
  E_NOINTERFACE | The interface is not supported.

ppDisp
  Address of a variable that receives the pointer to the document object's IDispatch interface.

See also IWebBrowserApp::get_Application, IWebBrowserApp::get_Container, IWebBrowserApp::get_Parent

#### IWebBrowserApp::get_FullName

    HRESULT get_FullName(
        BSTR FAR* pbstrFullName  // address of buffer for pathname
    );

Retrieves the fully qualified pathname of the Internet Explorer executable file.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.
  E_OUTOFMEMORY | Out of memory.

pbstrFullName
  Address of a caller-allocated buffer that receives the pathname of the executable file.

#### IWebBrowserApp::get_FullScreen

    HRESULT get_FullScreen(
        VARIANT_BOOL FAR* pbFullScreen  // address of variable for full-screen flag
    );

Determines if Internet Explorer is in full screen or normal window mode. In full-screen mode, the Internet Explorer main window is maximized and the status bar, toolbar, menu bar, and title bar are hidden.

pbFullScreen
  Address of a variable that recieves TRUE if Internet Explorer is in full-screen mode, or FALSE if it is in normal window mode.

See also IWebBrowserApp::put_FullScreen

#### IWebBrowserApp::put_FullScreen

    HRESULT put_FullScreen(
        VARIANT_BOOL bFullScreen  // full-screen flag
    );

Sets Internet Explorer to either full-screen or normal window mode. In full-screen mode, the Internet Explorer main window is maximized and the status bar, toolbar, menu bar, and title bar are hidden.

- Returns S_OK to indicate that the operation was successful.

bFullScreen
  Full-screen flag. If this parameter is TRUE, Internet Explorer is set to full-screen mode; if FALSE, it is set to normal window mode.

See also IWebBrowserApp::get_FullScreen

#### IWebBrowserApp::get_Height

    HRESULT get_Height(
        long FAR* pl  // address of variable for height
    );

Retreives the height of Internet Explorer's main window.

- Returns S_OK to indicate that the operation was successful.

pl
  Address of a variable that receives the height, in pixels, of the main window.

See also IWebBrowserApp::get_Width, IWebBrowserApp::put_Height

#### IWebBrowserApp::put_Height

    HRESULT put_Height(
        long Height  // height of main window
    );

Sets the height of Internet Explorer's main window.

- Returns S_OK to indicate that the operation was successful.

Height
  Height, in pixels, of the main window.

See also IWebBrowserApp::get_Height, IWebBrowserApp::put_Width

#### IWebBrowserApp::get_HWND

    HRESULT get_HWND(
        long FAR* pHWND  // address of variable for window handle
    );

Retrieves the handle of Internet Explorer's main window.

- Returns S_OK to indicate that the operation was successful.

pHWND
  Address of a variable that receives window handle.

#### IWebBrowserApp::get_Left

    HRESULT get_Left(
        long FAR* pl  // address of variable for left-edge coordinate
    );

Retrieves the screen coordinate of the left edge of Internet Explorer's main window.

- Returns S_OK to indicate that the operation was successful.

pl
  Address of a variable that receives the screen coordinate of the main window's left edge.

See also IWebBrowserApp::get_Top, IWebBrowserApp::put_Left

#### IWebBrowserApp::put_Left

    HRESULT put_Left(
        long Left  // screen coordinate of left edge
    );

Sets the horizontal position of Internet Explorer's main window.

- Returns S_OK to indicate that the operation was successful.

Left
  Screen coordinate of the left edge of the main window.

See also IWebBrowserApp::get_Left, IWebBrowserApp::put_Top

#### IWebBrowserApp::get_LocationName

    HRESULT get_LocationName(
        BSTR FAR* pbstrLocationName  // address of buffer for location name
    );

Retrieves the name of the resource that Internet Explorer is currently displaying. If the resource is an HTML page on the World Wide Web, the name is the title of that page. If the resource is a folder or file on the network or local computer, the name is the UNC or full path of the folder or file.

- Returns one of these values:

  S_OK | The operation was successful.
  E_OUTOFMEMORY | Out of memory.

pbstrLocationName
  Address of a caller-allocated buffer that receives the name of the location.

See also IWebBrowserApp::get_LocationURL

#### IWebBrowserApp::get_LocationURL

    HRESULT get_LocationURL(
        BSTR FAR* pbstrLocationURL  // address of buffer for location URL
    );

Retrieves the URL of the resource that Internet Explorer is currently displaying. If the resource is a folder or file on the network or local computer, the name is the UNC or full path of the folder or file.

- Returns one of these values:

  S_OK | The operation was successful.
  E_OUTOFMEMORY | Out of memory.

pbstrLocationURL
  Address of a caller-allocated buffer that receives the URL.

See also IWebBrowserApp::get_LocationName

#### IWebBrowserApp::get_MenuBar

    HRESULT get_MenuBar(
        VARIANT_BOOL FAR* Value  // address of variable for visibility flag
    );

Returns a value that indicates whether Internet Explorer's menu bar is visible.

Value
  Address of a variable that receives TRUE if the menu bar is visible or FALSE if it isn't.

See also IWebBrowserApp::put_MenuBar

#### IWebBrowserApp::put_MenuBar

    HRESULT put_MenuBar(
        VARIANT_BOOL Value  // show flag
    );

Shows or hides Internet Explorer's menu bar.

Value
  Show flag. A value of TRUE shows the menu bar; a value of FALSE hides it.

See also IWebBrowserApp::get_MenuBar

#### IWebBrowserApp::get_Name

    HRESULT get_Name(
        BSTR FAR* pbstrName  // address of buffer that receives the name
    );

Retrieves the name of the object that contains the Web browser control used by Internet Explorer.

- Returns one of these values:

  S_OK | The operation was successful.
  E_OUTOFMEMORY | Out of memory.

pbstrName
  Address of a caller-allocated buffer that receives the name of the object that contains the Web browser control.

#### IWebBrowserApp::get_Parent

    HRESULT get_Parent(
        IDispatch * FAR* ppDisp  // address of variable for IDispatch pointer
    );

Retrieves a pointer to the IDispatch interface of the object that is the container of the Web browser control.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.
  E_NOINTERFACE | The interface is not supported.

ppDisp
  Address of a variable that receives the pointer to the container's IDispatch interface.

See also IWebBrowserApp::get_Application, IWebBrowserApp::get_Container, IWebBrowserApp::get_Document

#### IWebBrowserApp::get_Path

    HRESULT get_Path(
        BSTR FAR* pbstrPath  // address of buffer for full path
    );

Retrieves the full path of the Internet Explorer application.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.
  E_OUTOFMEMORY | Out of memory.

pbstrPath
  Address of a caller-allocated buffer that receives the full path.

#### IWebBrowserApp::get_StatusBar

    HRESULT get_StatusBar(
        VARIANT_BOOL FAR* pBool  // address of variable for visibility flag
    );

Returns a value that indicates whether Internet Explorer's status bar is visible.

pBool
  Address of a variable that receives TRUE if the status bar is visible or FALSE if it isn't.

See also IWebBrowserApp::put_StatusBar

#### IWebBrowserApp::put_StatusBar

    HRESULT put_StatusBar(
        VARIANT_BOOL Value  // show flag
    );

Shows or hides Internet Explorer's status bar.

Value
  Show flag. A value of TRUE shows the status bar; a value of FALSE hides it.

See also IWebBrowserApp::get_StatusBar

#### IWebBrowserApp::get_StatusText

    HRESULT get_StatusText(
        BSTR FAR* pbstr  // address of buffer for text
    );

Retrieves the text of Internet Explorer's status bar.

pbstr
  Address of a caller-allocated buffer that receives the text of the status bar.

See also IWebBrowserApp::put_StatusText

#### IWebBrowserApp::put_StatusText

    HRESULT put_StatusText(
        BSTR bstr  // status bar text
    );

Sets the text of Internet Explorer's status bar.

bstr
  Status bar text.

See also IWebBrowserApp::get_StatusText

#### IWebBrowserApp::get_ToolBar

    HRESULT get_ToolBar(
        int FAR* pValue  // receives visibility flag
    );

Retrieves a value that indicates whether Internet Explorer's toolbar is visible.

pValue
  Address of a variable that receives TRUE if the toolbar is visible, or FALSE if it isn't.

See also IWebBrowserApp::put_ToolBar

#### IWebBrowserApp::put_ToolBar

    HRESULT put_ToolBar(
        int Value  // show flag
    );

Shows or hides Internet Explorer's toolbar.

Value
  Show flag. A value of TRUE shows the toolbar; a value of FALSE hides it.

See also IWebBrowserApp::get_ToolBar

#### IWebBrowserApp::get_Top

    HRESULT get_Top(
        long FAR* pl  // address of variable for top-edge coordinate
    );

Retrieves the screen coordinate of the top edge of Internet Explorer's main window.

- Returns S_OK to indicate that the operation was successful.

pl
  Address of a variable that receives the screen coordinate of the main window's top edge.

See also IWebBrowserApp::get_Left, IWebBrowserApp::put_Top

#### IWebBrowserApp::put_Top

    HRESULT put_Top(
        long Top  // screen coordinate of top edge
    );

Sets the vertical position of Internet Explorer's main window.

- Returns S_OK to indicate that the operation was successful.

Top
  Screen coordinate of the top edge of the main window.

See also IWebBrowserApp::get_Top, IWebBrowserApp::put_Left

#### IWebBrowserApp::get_TopLevelContainer

    HRESULT get_TopLevelContainer(
        VARIANT_BOOL FAR* pBool)  // address of variable for top-level flag

Determines if Internet Explorer is the top-level container of the Web browser control.

- Returns S_OK to indicate that the operation was successful.

pBool
  Address of variable that receives TRUE if the container is a top-level container, or FALSE otherwise.

#### IWebBrowserApp::get_Type

    HRESULT get_Type(
        BSTR FAR* pbstrType  // address of buffer for type
    );

Retrieves the type name of the contained document object.

- Returns one of these values:

  S_OK | The operation was successful.
  E_FAIL | The operation failed.
  E_OUTOFMEMORY | Out of memory.

pbstrType
  Address of a caller-allocated buffer that receives the type name.

#### IWebBrowserApp::get_Visible

    HRESULT get_Visible(
        VARIANT_BOOL FAR* pBool  // address of variable for visibility flag
    );

Discovers whether Internet Explorer is visible or hidden.

- Returns S_OK to indicate that the operation was successful.

pBool
  Address of a variable that receives TRUE if Internet Explorer is visible, or FALSE if it is hidden.

See also IWebBrowserApp::put_Visible

#### IWebBrowserApp::put_Visible

    HRESULT put_Visible(
        VARIANT_BOOL Value  // visibility flag
    );

Sets the visibility state of Internet Explorer.

- Returns S_OK to indicate that the operation was successful.

Value
  Visibility flag. If this parameter is TRUE, Internet Explorer is visible; if FALSE, it is hidden.

See also IWebBrowserApp::get_Visible

#### IWebBrowserApp::get_Width

    HRESULT get_Width(
        long FAR* pl  // address of variable for width
    );

Retreives the width of Internet Explorer's main window.

- Returns S_OK to indicate that the operation was successful.

pl
  Address of a variable that receives the width, in pixels, of the main window.

See also IWebBrowserApp::get_Height, IWebBrowserApp::put_Width

#### IWebBrowserApp::put_Width

    HRESULT put_Width(
        long Width  // width of main window
    );

Sets the width of Internet Explorer's main window.

- Returns S_OK to indicate that the operation was successful.

Width
  Width, in pixels, of the main window.

See also IWebBrowserApp::get_Width, IWebBrowserApp::put_Height

### DWebBrowserEvents

Designates an event sink interface that an application must implement in order to receive event notifications from a Web browser control or from the Internet Explorer application.

Methods in Vtable Order

IUnknown Methods | Description
QueryInterface | Returns pointers to supported interfaces.
AddRef | Increments the reference count.
Release | Decrements the reference count.

IDispatch Methods | Description
GetTypeInfoCount | Retrieves the number of type information interfaces that the Web browser control provides.
GetTypeInfo | Retrieves a type information object, which can be used to get the type information for an interface.
GetIDsOfNames | Maps a single member and an optional set of argument names to a corresponding set of integer DISPIDs, which may be used in subsequent calls to IDispatch::Invoke.
Invoke | Provides access to properties and methods exposed by an object.

DWebBrowserEvents Methods | Description
BeforeNavigate | Occurs when the Web browser control is about to navigate to a new URL.
FrameBeforeNavigate | Occurs when the Web browser control is about to navigate to a new URL. This event is fired for navigations that occur inside an HTML frame.
FrameNavigateComplete | Occurs after the browser has successfully navigated to a new location. This event is fired for navigations that occur inside an HTML frame.
FrameNewWindow | Occurs when a new window is to be created for displaying a resource. This event is fired for navigations that occur inside an HTML frame.
NavigateComplete | Occurs after the browser has successfully navigated to a new location.
StatusTextChange | Occurs when the status bar text has changed.
ProgressChange | Occurs when the progress of a download operation is updated.
DownloadComplete | Occurs when a navigation operation finished, was halted, or failed.
CommandStateChange | Occurs when the enabled state of a command changes.
DownloadBegin | Occurs when a navigation operation is beginning, shortly after the BeforeNavigate event, unless the navigation is cancelled.
NewWindow | Occurs when a new window is to be created for displaying a resource.
TitleChange | Occurs when the title of a document in the Web browser control becomes available or changes.
Quit | Occurs when the Internet Explorer application is ready to quit.
PropertyChange | Occurs when the IWebBrowserApp::PutProperty function changes the value of a property.

#### DWebBrowserEvents::BeforeNavigate

    void BeforeNavigate(
        BSTR URL,              // URL to navigate to
        long Flags,            // option flags
        BSTR TargetFrameName,  // name of frame for resource
        VARIANT FAR* PostData, // address of HTTP POST data
        BSTR Headers,          // HTTP headers
        VARIANT_BOOL FAR* Cancel  // cancel flag
    );

Notifies an application that Web browser control is about to navigate to a different URL, which may happen as a result of external automation, internal automation from a script, or the user clicking a link or typing in the address bar. The container has an opportunity to cancel the pending navigation.

- No return Value.

URL
  URL to be navigated to.
Flags
  Reserved for future use.
TargetFrameName
  String that contains the name of the frame in which to display the resource, or NULL if no named frame is targeted for the resource.
PostData
  Address of data to send to the server if the HTTP POST transaction is being used.
Headers
  Additional HTTP headers to send to the server (HTTP URLs only). The headers can specify such things as the action required of the server, the type of data being passed to the server, or a status code.
Cancel
  Address of cancel flag. An application can set this parameter to TRUE to cancel the navigation operation, or FALSE to allow it to proceed.

The post data specified by PostData is passed as a SAFEARRAY. The variant should be of type VT_ARRAY and point to a SAFEARRAY. The SAFEARRAY should be of element type VT_UI1, dimension one, and have an element count equal to the number of bytes of post data.

See also DWebBrowserEvents::FrameBeforeNavigate, DWebBrowserEvents::FrameNavigateComplete, DWebBrowserEvents::NavigateComplete, IWebBrowser::Navigate

#### DWebBrowserEvents::CommandStateChange

    void CommandStateChange(
        long Command,        // command identifier
        VARIANT_BOOL Enable  // enabled state
    );

Notifies an application that the enabled state of a Web browser command has changed.

- No return value.

Command
  Identifier of the command whose enable state has changed.
Enable
  Enabled state. This parameter is TRUE if the command is enabled, or FALSE if it is disabled.

#### DWebBrowserEvents::DownloadBegin

    void DownloadBegin(void);

Notifies an application that a navigation operation is beginning. This event is fired shortly after the BeforeNavigate event, unless the navigation is cancelled. Any animation or "busy" indication that the container needs to display should be connected to this event. a new page is about to be downloaded.

- No return value.

See also DWebBrowserEvents::DownloadComplete

#### DWebBrowserEvents::DownloadComplete

    void DownloadComplete(void);

Occurs when a navigation operation finished, was halted, or failed. Unlike NavigateComplete which is only fired when a URL is successfully navigated to, this event is always fired after a navigation starts. Any animation or "busy" indication that the container needs to display should be connected to this event.

- No return value.

See also DWebBrowserEvents::DownloadBegin

#### DWebBrowserEvents::FrameBeforeNavigate

    void FrameBeforeNavigate(
        BSTR URL,              // URL to navigate to
        long Flags,            // option flags
        BSTR TargetFrameName,  // name of frame for resource
        VARIANT FAR* PostData, // address of HTTP POST data
        BSTR Headers,          // HTTP headers
        VARIANT_BOOL FAR* Cancel  // cancel flag
    );

Notifies an application that Web browser control is about to navigate to a different URL, which may happen as a result of external automation, internal automation from a script, or the user clicking a link or typing in the address bar. The container has an opportunity to cancel the pending navigation. This event is fired for navigations that occur inside an HTML frame.

- No return Value.

URL
  URL to be navigated to.
Flags
  Reserved for future use.
TargetFrameName
  String that contains the name of the frame in which to display the resource, or NULL if no named frame is targeted for the resource.
PostData
  Address of data to send to the server if the HTTP POST transaction is being used.
Headers
  Additional HTTP headers to send to the server (HTTP URLs only). The headers can specify such things as the action required of the server, the type of data being passed to the server, or a status code.
Cancel
  Address of cancel flag. An application can set this parameter to TRUE to cancel the navigation operation, or FALSE to allow it to proceed.

The post data specified by PostData is passed as a SAFEARRAY. The variant should be of type VT_ARRAY and point to a SAFEARRAY. The SAFEARRAY should be of element type VT_UI1, dimension one, and have an element count equal to the number of bytes of post data.

See also DWebBrowserEvents::FrameNavigateComplete, DWebBrowserEvents::NavigateComplete, IWebBrowser::Navigate

#### DWebBrowserEvents::FrameNavigateComplete

    void FrameNavigateComplete(
        BSTR URL,              // URL to navigate to
    );

Notifies an application that the browser has successfully navigated to a new location. The document may still be downloading (and in the case of HTML, images may still be downloading), but at least part of the document has been received from the server and the viewer for the document has been created. This event is fired for navigations that occur inside an HTML frame.

- No return value.

URL
  URL to be navigated to. Note that this URL can be different from the URL that the browser was told to navigate to. One reason is that this URL is the canonicalized and qualified URL; for instance, if an application specified a URL of "www.microsoft.com" in a call to the Navigate function, the URL passed by NavigateComplete will be "http://www.microsoft.com/". Also, if the server has redirected the browser to a different URL, the redirected URL will be reflected here.

See also DWebBrowserEvents::FrameBeforeNavigate, IWebBrowser::Navigate

#### DWebBrowserEvents::FrameNewWindow

    void FrameNewWindow(
        BSTR URL,              // URL to navigate to
        long Flags,            // option flags
        BSTR TargetFrameName,  // name of frame for resource
        VARIANT FAR* PostData, // address of HTTP POST data
        BSTR Headers,          // HTTP headers
        VARIANT_BOOL FAR* Processed // name of referring document
    );

Notifies an application that a new window is to be created for displaying a resource. Some actions that can cause this include the user shift-clicking on a link, the user right-clicking on a link and choosing "open in new window", or a targeted navigation to a frame name that does not yet exist. The container has an opportunity to handle the new window creation itself. If it does not, a top-level Internet Explorer window is created as a separate process. This event is fired for navigations that occur inside an HTML frame.

- No return value.

URL
  URL to be navigated to.
Flags
  Reserved for future use.
TargetFrameName
  String that contains the name of the frame in which to display the resource, or NULL if no named frame is targeted for the resource.
PostData
  Address of data to send to the server if the HTTP POST transaction is used.
Headers
  HTTP headers to send to the server (HTTP URLs only). The headers can specify such things as the action required of the server, the type of data being passed to the server, or a status code.
Processed
  Value that indicates whether the container intends to create the new window. Set this parameter to TRUE if the container will create the window, or to FALSE if a top-level Internet Explorer window is to be created.

The preferred behavior of Web browser control containers is to process this event, create a new instance of the Web browser control, and pass all the parameters from the NewWindow event directly to the IWebBrowser::Navigate method on the newly created Web browser control. Another option for containers that cannot or do not need to create a new window is to degrade by performing the navigation in the existing window. To do this, they may process this event and then pass the parameters from this event to IWebBrowser::Navigate on the existing window.

The post data specified by PostData is passed as a SAFEARRAY. The variant should be of type VT_ARRAY and point to a SAFEARRAY. The SAFEARRAY should be of element type VT_UI1, dimension one, and have an element count equal to the number of bytes of post data.

See also IWebBrowser::Navigate

#### DWebBrowserEvents::NavigateComplete

    void NavigateComplete(
        BSTR URL,              // URL to navigate to
    );

Notifies an application that the browser has successfully navigated to a new location. The document may still be downloading (and in the case of HTML, images may still be downloading), but at least part of the document has been received from the server and the viewer for the document has been created.

- No return value.

URL
  URL to be navigated to. Note that this URL can be different from the URL that the browser was told to navigate to. One reason is that this URL is the canonicalized and qualified URL; for instance, if an application specified a URL of "www.microsoft.com" in a call to the Navigate function, the URL passed by NavigateComplete will be "http://www.microsoft.com/". Also, if the server has redirected the browser to a different URL, the redirected URL will be reflected here.

See also DWebBrowserEvents::BeforeNavigate, IWebBrowser::Navigate

#### DWebBrowserEvents::NewWindow

    void NewWindow(
        BSTR URL,              // URL to navigate to
        long Flags,            // option flags
        BSTR TargetFrameName,  // name of frame for resource
        VARIANT FAR* PostData, // address of HTTP POST data
        BSTR Headers,          // HTTP headers
        VARIANT_BOOL FAR* Processed // name of referring document
    );

Notifies an application that a new window is to be created for displaying a resource. Some actions that can cause this include the user shift-clicking on a link, the user right-clicking on a link and choosing "open in new window", or a targeted navigation to a frame name that does not yet exist. The container has an opportunity to handle the new window creation itself. If it does not, a top-level Internet Explorer window is created as a separate process.

- No return value.

URL
  URL to be navigated to.
Flags
  Reserved for future use.
TargetFrameName
  String that contains the name of the frame in which to display the resource, or NULL if no named frame is targeted for the resource.
PostData
  Address of data to send to the server if the HTTP POST transaction is used.
Headers
  HTTP headers to send to the server (HTTP URLs only). The headers can specify such things as the action required of the server, the type of data being passed to the server, or a status code.
Processed
  Value that indicates whether the container intends to create the new window. Set this parameter to TRUE if the container will create the window, or to FALSE if a top-level Internet Explorer window is to be created.

The preferred behavior of Web browser control containers is to process this event, create a new instance of the Web browser control, and pass all the parameters from the NewWindow event directly to the IWebBrowser::Navigate method on the newly created Web browser control. Another option for containers that cannot or do not need to create a new window is to degrade by performing the navigation in the existing window. To do this, they may process this event and then pass the parameters from this event to IWebBrowser::Navigate on the existing window.

The post data specified by PostData is passed as a SAFEARRAY. The variant should be of type VT_ARRAY and point to a SAFEARRAY. The SAFEARRAY should be of element type VT_UI1, dimension one, and have an element count equal to the number of bytes of post data.

See also IWebBrowser::Navigate

#### DWebBrowserEvents::ProgressChange

    void ProgressChange(
        long Progress,    // amount of total progress
        long ProgressMax  // maximum progress
    );

Notifies an application that the progress of a download operation has been updated.

- No return value.

Progress
  Amount of total progress to show, or -1 when progress is complete.
ProgressMax
  Maximum progress value.

The container can use the information provided by this event to display the number of bytes downloaded so far or to update a progress indicator.

To calculate the percentage of progress to show in a progress indicator, multiply the value of Progress by 100 and divide by the value of ProgressMax (unless progress is -1, in which case the container can indicate that the operation is finished or hide the progress indicator).

See also DWebBrowserEvents::DownloadBegin, DWebBrowserEvents::DownloadComplete

#### DWebBrowserEvents::PropertyChange

    void PropertyChange(
        BSTR szProperty,    // name of property that changed
    );

Notifies an application that the PutProperty function has changed the value of a property.

- No return value.

szProperty
  Caller-alocated buffer that contains the name of the property.

See also IWebBrowserApp::GetProperty, IWebBrowserApp::PutProperty

#### DWebBrowserEvents::Quit

    void Quit(
        VARIANT_BOOL FAR* Cancel  // address of cancel flag
    );

Notifies an application that the Internet Explorer application is ready to quit.

- No return value.

Cancel
  Address of the cancel flag. An application can set this parameter to TRUE to cancel the quit operation, or FALSE to allow it to continue.

#### DWebBrowserEvents::StatusTextChange

    void StatusTextChange(
        BSTR bstrText  // new status bar text
    );

Notifies an application that the text of the status bar associated with the Web browser control has changed.

- No return value.

bstrText
  String that contains the new status bar text.

#### DWebBrowserEvents::TitleChange

    void TitleChange(
        BSTR Text  // document title
    );

Notifies an application that the title of a document in the Web browser control becomes available or changes. For HTML, the title may change; while HTML is still downloading, the URL of the document is set as the title. After the real title (if there is one) is parsed from the HTML, the title is changed to reflect the actual title.

- No return value.

Text
  Caller allocated buffer that contains the new document title.

See also DWebBrowserEvents::CommandStateChange, DWebBrowserEvents::StatusTextChange

© 1996 Microsoft Corporation