我读到的所有内容都表明这QDesktopServices::openUrl
是使用默认程序打开文档的与平台无关的方式,并且几乎在所有时间都运行良好。
我说几乎,因为如果我通过网络路径它似乎总是失败。梳理源代码,我看到ShellExecute返回错误代码 2。
例子:
QUrl localpath = QUrl::fromLocalFile("C:/temp/myfile.txt");
QUrl networkpath = QUrl::fromLocalFile("//192.168.0.5/my folder/myfile.txt");
QDesktopServices::openUrl(localpath); //works fine
QDesktopServices::openUrl(networkpath); //always fails
有没有办法可以清理网络路径以正确打开?我在 Windows 上运行 Qt 4.8。将正斜杠切换为反斜杠没有帮助。