Manipuler pointeur vers IHTMLWindow2 [Résolu]

Signaler
Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011
-
Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011
-
Bonjour,

Je cherche à manipuler un pointeur vers l'interface IHTMLWindow2 en Win32 (sans MFC etc):
http://msdn.microsoft.com/en-us/library/aa741505.aspx

Par exemple, pour redimensionner la fenêtre, il faut apparemment utiliser la fonction resizeTo(x, y), mais comment l'appeler à partir du pointeur IHTMLWindow2 ?

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);
------------------------------------------------------------------------------

2 réponses

Messages postés
1107
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
10 juillet 2018
4
euh ...
pHTMLWindow->resizeTo( 100,100); ca ne marche pas ?
Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011

J'avais déjà tenté ça, mais j'avais eu une erreur, je viens de m'apercevoir que l'erreur venait de l'include mshtml.h manquant (le noob...), maintenant ça fonctionne !

Merci à toi !