私のアプリケーションでは、ボタンをクリックして開きたい HTML ファイルを生成します。したがって、私のファイルの名前は次のようになります。
QString file = "F:/the_path/to_the_/generated_html_file.html";
Windows では、次のように変更します。
file = "file:///F:/the_path/to_the_/generated_html_file.html";
で開くことができるように:
QDesktopServices::openUrl(QUrl(file));
デフォルトのブラウザで開きます。
しかし、文字#
がパスまたはファイル名に存在する場合、それは機能しなくなり、URL が . の直後で切り捨てられているようです#
。
たとえば、ファイルに という名前を付けると、generated#_html_file.html
次のエラー メッセージが表示されます。
ShellExecute 'F:/the_path/to_the_/generated' failed (error 2).
なぜそれが起こるのですか?どうすれば回避できますか?