Creates a modal dialog box that displays HTML.
Syntax
HRESULT ShowHTMLDialog(
HWND hwndParent,
IMoniker* pMk,
VARIANT* pvarArgIn,
WCHAR* pchOptions,
VARIANT* pvarArgOut
);
Parameters
- hwndParent
- Handle to the parent of the dialog box.
- pMk
- Address of an
IMoniker interface from which the HTML for the dialog box is loaded.
- pvarArgIn
- Address of a VARIANT structure that contains
the input data for the dialog box. The data passed in this VARIANT
is placed in the
window object's
IHTMLDialog::dialogArguments property. This parameter can be NULL.
- pchOptions
- Window ornaments for the dialog box. This parameter
can be NULL or the address of a string that contains a combination of values,
each separated by a semicolon (;). See the description of the features
parameter of the
IHTMLWindow2::showModalDialog method of the window object for
detailed information.
- pvarArgOut
- Address of a VARIANT structure that
contains the output data for the dialog box. This VARIANT receives
the data that was placed in the window object's
IHTMLDialog::returnValue property. This parameter can be NULL.
Return Value
Returns S_OK if successful,
or an error value otherwise.
Remarks
To use ShowHTMLDialog, which
is implemented in Mshtml.dll, you need to dynamically load and call this
function by using the
LoadLibrary and
GetProcAddress functions. The proper function type for ShowHTMLDialog
is defined in Mshtmhst.h in the
SHOWHTMLDIALOGFN type. A full sample that demonstrates the usage of
ShowHTMLDialog is available on the
ShowHTMLDialog Sample Source Page.
Example
The following example shows the most
basic steps needed to load Mshtml.dll, obtain the address of ShowHTMLDialog
using GetProcAddress, create a URL moniker, and call ShowHTMLDialog
.
HINSTANCE hinstMSHTML = LoadLibrary(TEXT("MSHTML.DLL"));
if (hinstMSHTML)
{
SHOWHTMLDIALOGFN* pfnShowHTMLDialog;
pfnShowHTMLDialog = (SHOWHTMLDIALOGFN*)GetProcAddress(hinstMSHTML,
TEXT("ShowHTMLDialog"));
if (pfnShowHTMLDialog)
{
IMoniker *pURLMoniker;
BSTR bstrURL = SysAllocString(L"http://www.example.com/dialogsource.htm");
CreateURLMoniker(NULL, bstrURL, &pURLMoniker);
if (pURLMoniker)
{
(*pfnShowHTMLDialog)(NULL, pURLMoniker, NULL, NULL, NULL);
pURLMoniker->Release();
}
SysFreeString(bstrURL);
}
FreeLibrary(hinstMSHTML);
}
Function Information
Stock Implementation |
mshtml.dll |
Custom Implementation |
No |
Header |
mshtmhst.h |
Import library |
mshtml.dll |
Minimum availability |
Internet Explorer 4.0 |
Minimum operating systems |
Windows NT 4.0, Windows 95 |
See Also
Creating an HTML Resource