Aide sur ShowHTMLDialogEx

HeavenForsaker Messages postés 223 Date d'inscription mercredi 13 juillet 2005 Statut Membre Dernière intervention 8 août 2011 - 9 juin 2009 à 15:22
HeavenForsaker Messages postés 223 Date d'inscription mercredi 13 juillet 2005 Statut Membre Dernière intervention 8 août 2011 - 10 juin 2009 à 21:55
Bonjour,

J'aimerais savoir si il y a un autre moyen que d'utiliser FindWindow pour d'obtenir le handle de la boite de dialogue crée par la fonction ShowHTMLDialogEx.
Je voudrais aussi savoir comment changer et rafraichir la page HTML affichée.

Si vous avez des liens vers de la doc et des exemples ça m'intéresse aussi parce que je n'ai rien trouvé de pertinent à ce sujet sur MSDN.

Voici le code permettant d'obtenir le pointeur vers l'interface IHTMLWindow2:
------------------------------------------------------------------------------
    IHTMLWindow2* pHTMLWindow = 0;

    HINSTANCE hinstMSHTML = LoadLibrary(_TEXT("MSHTML.DLL"));
    if (hinstMSHTML == NULL)
       return;

    SHOWHTMLDIALOGEXFN* pfnShowModelessHTMLDialog;
    pfnShowModelessHTMLDialog = (SHOWHTMLDIALOGEXFN*)GetProcAddress(hinstMSHTML, "ShowHTMLDialogEx");
    if (pfnShowModelessHTMLDialog)
    {
        IMoniker *pURLMoniker;
        BSTR bstrURL = SysAllocString(L"C:\\doc.html");
        CreateURLMoniker(NULL, bstrURL, &pURLMoniker);
        if (pURLMoniker)
        {
            VARIANT varArgOut;
            HRESULT hres = (*pfnShowModelessHTMLDialog)(hParent, pURLMoniker, HTMLDLG_MODELESS, NULL, NULL, &varArgOut);
            if (hres == S_OK)
                pHTMLWindow = (IHTMLWindow2*)varArgOut.punkVal;

            pURLMoniker->Release();
        }

        if (bstrURL)
            SysFreeString(bstrURL);
    }

    FreeLibrary(hinstMSHTML);
------------------------------------------------------------------------------

1 réponse

HeavenForsaker Messages postés 223 Date d'inscription mercredi 13 juillet 2005 Statut Membre Dernière intervention 8 août 2011
10 juin 2009 à 21:55
wizzz !!
0
Rejoignez-nous