c++ - 使用 CoCreateInstance 函数打开 Mozilla Firefox。怎么做?
问题描述
早上好,
在我的 C++ 代码中,我想通过 Mozilla Firefox 打开网页,而不再使用 Internet Explorer。我能怎么做 ?
std::string post = utils::to_html_string(postData);
if (SUCCEEDED(OleInitialize(NULL)))
{
IWebBrowser2* pBrowser2;
CoCreateInstance(CLSID_InternetExplorer, NULL, CLSCTX_LOCAL_SERVER,
IID_IWebBrowser2, (void**)&pBrowser2);
if (pBrowser2)
{
GEMLOG(InfoLevel, std::string("void IntegratedBrowser::GoTo(" + website + ")").c_str(), "Displaying web page");
long rc = DisplayPOST(pBrowser2, (char*)website.c_str(), (char*)post.c_str(), (char*)header.c_str());
GEMLOG(InfoLevel, std::string("void IntegratedBrowser::GoTo(" + website + ")").c_str(), "Calling waitReadyStateComplete");
pBrowser2->Release();
}
OleUninitialize();
}
解决方案
我从来没有听说过 Firefox 提供 COM 服务器。快速搜索显示其他人也没有听说过 Firefox COM/OLE 服务器。您可以找到 firefox.exe 或在默认浏览器中打开页面:使用 Visual C++ 以编程方式启动默认 Internet 浏览器
推荐阅读
- python - 找到具有共同首尾字符的最长字符串链的最快方法是什么?
- asp.net-core - 使用 HttpContext 直接调用网络主机
- django - 在 Elastic Load Balancer 下使用 EC2 上的 Nginx 获取客户端 IP
- python - 通过 csv 导入水深测量并可视化大量水体
- python - 如何在运行时根据条件动态导入lookup.py文件?
- python - 从 c++ 调用将 cv::Mat 传递给 Python
- python - Networkx 两条边而不是一条边以显示循环
- c# - RabbitMQ RPC 以异步方式?
- postgresql - 在 postgres 容器中创建多个数据库
- c++ - 如何使用 Qt 5 (C++) 中的按钮运行和关闭 roslaunch