use*_*898 7 c++ embedded-browser
我需要使用HTML/CSS/JavaScript以及所有跨平台的C++后端来构建我的应用程序GUI.我用QtWebKit,XULRunner和Mozilla 进行了简单的测试.
从简单的测试中我注意到一些非常重要的东西,它是浏览器库/框架的部署大小.它很大:8 MB及以上.
我错过了某种较小的嵌入式浏览器吗?
我不知道其他平台,但在 Windows 上执行此操作的最小方法是使用系统内置的 Web 浏览器控件。它基于 COM,编程起来可能相当复杂。以下代码让您成为这样的野兽:
HWND htmlWindow = ::CreateWindowExA(
dwExStyle,
ATLAXWIN_CLASS,
"about:blank",
dwStyle,
x, y, w, h,
hwndParent,
NULL,
hInstance,
NULL
);
CAxWindow2 helperWindow;
helperWindow.Attach(htmlWindow);
CComPtr<IWebBrowser2> theWebBrowserControl;
HRESULT hr = helperWindow.QueryControl(&theWebBrowserControl);
Run Code Online (Sandbox Code Playgroud)
上面的代码示例是数周痛苦地尝试理解这个 COM 事物的结果。好吧,希望你觉得它有用……
注意:以上示例取决于 ATL(而非 MFC)。