微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

打开默认浏览器时,ShellExecute从给定的URL中的'#'字符后截断

如何解决打开默认浏览器时,ShellExecute从给定的URL中的'#'字符后截断

我正在使用ShellExecute在QT应用程序中打开html文件。当我给浏览器名称作为参数时,它以'#'字符打开url,但是当我想以认浏览器打开它时,它在'#'字符后截断。这是我的工作代码(以完整的网址打开):

QString current_path = QDir::currentPath();
QString file_path = "/SimCommon/help/build/html/analyze.html#current";
QString url = "file:///" + current_path + file_path;
QByteArray url_arr = url.toLocal8Bit();
LPCSTR lp_url = LPCSTR(url_arr.constData());
ShellExecute(NULL,"open","chrome.exe",lp_url,NULL,SW_SHOWnorMAL);

交换最后一行:

ShellExecute(NULL,SW_SHOWnorMAL);

然后打开网址,如“ /SimCommon/help/build/html/analyze.html”。 有没有办法打开带有完整URL的认浏览器?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。