QDesktopServices::openUrl() 不会在 Windows 上的 chrome 中打开页面。解决方法?
QDesktopServices::openUrl() doesn't open page in chrome on windows. Workaround?
QDesktopServices::openUrl(QUrl("http://google.com"));
适用于默认浏览器ie9, ie8, firefox或opera
如果默认浏览器是chrome,什么也不会发生
QtCreator调试日志我可以看到像
这样的行ModLoad: 00000000`05250000 00000000`05308000 iexplore.exe
或
ModLoad: 00000000`04db0000 00000000`04ef8000 chrome.exe
所以它实际上工作,但ie, ff等打开新的标签与指定的url和chrome不
我想是bug
前段时间它工作得很好
可能是我的系统(ENV变量等)有问题吗?
请帮助解决
我更喜欢跨平台,但在Windows上正常工作具有最大优先级
可能的解决方案(winapi SHELLEXECUTE) -真的很讨厌用难看的#ifdef,但可以是一个选项
PS:对不起,我的英文很差。
我认为这不是你的应用程序的问题。我认为这更多的是关于Chrome如何处理这样的调用。站在你的立场,我会选择winpai SHELLEXECUTE解决方案。与将默认浏览器调用移到操作系统而不是Qt库的好处相比,#ifdef并不是真的丑陋。
相关文章:
- 有没有办法在 c++ 中同时生成随机数?如果没有,是否有解决方法?
- 从 int 中剥离位时,编译器会警告一个转换,但不警告其他转换.有解决方法吗?
- 是否有解决方法可以在 c++ 中为 short 定义用户定义的文字?
- 不为 emplace() 定义构造函数的解决方法
- 删除复制构造函数的 Intel 13.1.2 中不良C++行为的解决方法
- 函数模板部分专业化-有什么解决方法吗
- 带boost的过载模糊性:可选,解决方法
- 继承构造函数和其他变量的解决方法
- C++ 解决方法:"从类型"B*"的表达式初始化类型"C*&"的引用无效"
- 对前向声明类型进行unique_ptr的解决方法
- 解决方法:'can not be used when making a shared object; recompile with -fPIC'使用Cmake。使用普通的 g++ 工作
- 解决方法:QPixmap:在GUI线程之外使用pixmap是不安全的
- CreateProcessWithTokenW 的 cmdline 参数的最大长度是否有解决方法?
- C++双精度作为模板参数的解决方法
- 在参数相关查找之前进行模板替换的任何方法(或解决方法?
- CUDA 内核"Only a single pack parameter is allowed"解决方法?
- dlsym() 解决方法返回类型
- VS2017是否有VLA(可变长度阵列)支持解决方法
- 解决方法:未定义对"class::function"的引用
- 来自 Boost 的 JSON 解析器的警告 C4512 的解决方法