В процессе IE (сеанс) браузера я хочу наследовать браузер, который я создал в процессе IE (сеанс) - PullRequest
0 голосов
/ 28 декабря 2018

IWebBrowser2 создает новое окно браузера IE.Однако этот браузер будет наследоваться основным процессом (сеансом) предварительно сгенерированного IE.

Если в вашем браузере есть несколько процессов (сеансов), вы хотите, чтобы этот процесс (сеанс) был унаследованнужного браузера.

Чтобы сгруппировать свой браузер (сеанс), вы обычно можете дважды щелкнуть ярлык IE.Если вы открываете его с правами администратора, вы можете открыть его как файл-> новый раздел в окне браузера IE.

Я хочу создать новый браузер через IWebBrowser2 и унаследовать браузер, который я создал в процессе IE(сеанс) существующего браузера.

Если вы предоставите базовый пример файла для решения проблемы, мы будем поддерживать $ 500 с PayPal.

void NewWindows(HWND hHandle, CString strUrl, int x, int y, int cx, int cy)
{
    CoInitialize(NULL);

    HRESULT hr = NULL;
    IWebBrowser2* pWebBrowser = NULL;

    hr = CoCreateInstance(CLSID_InternetExplorer, NULL, CLSCTX_LOCAL_SERVER, IID_IWebBrowser2, (LPVOID*)&pWebBrowser);

    if (SUCCEEDED(hr) && (pWebBrowser != NULL))
    {
        pWebBrowser->get_HWND((long*)&m_bNewWindowsHandle);

        if (x >= 0) pWebBrowser->put_Left(x);
        if (y >= 0) pWebBrowser->put_Top(y);
        if (cx >= 0) pWebBrowser->put_Width(cx);
        if (cy >= 0) pWebBrowser->put_Height(cy);

        VARIANT vtUrl;
        VariantInit(&vtUrl);
        vtUrl.vt = VT_BSTR;
        vtUrl.bstrVal = strUrl.AllocSysString();

        pWebBrowser->Navigate2(&vtUrl, NULL, NULL, NULL, NULL);
        pWebBrowser->put_Visible(bShow ? VARIANT_TRUE : VARIANT_FALSE);

        VariantClear(&vtUrl);
    }
    else
    {
        if (pWebBrowser)
        pWebBrowser->Release();
    }

    CoUninitialize();
}

Я хочу унаследовать процесс (сеанс) браузера я хочу.

...