問題タブ [qdesktopservices]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - QT QDesktopServices:子ウィンドウで表示するには?
私は QT Creator 5.2.1 を持っています。QDesktopServices を使用して、次の行を使用して Ubuntu の PDF ビューアーから PDF ファイルを開きます。
上記の行は、私の .cpp ファイルに書かれています。期待どおり、PDF が別のウィンドウで開かれます。ウィジェット内で QDekstopServices を開くにはどうすればよいですか? ウィジェットは私のアプリケーションの中にあります。
qt - 「#」を含む「file:」URL で QDesktopServices::openUrl を使用するにはどうすればよいですか?
私のアプリケーションでは、ボタンをクリックして開きたい HTML ファイルを生成します。したがって、私のファイルの名前は次のようになります。
Windows では、次のように変更します。
で開くことができるように:
デフォルトのブラウザで開きます。
しかし、文字#
がパスまたはファイル名に存在する場合、それは機能しなくなり、URL が . の直後で切り捨てられているようです#
。
たとえば、ファイルに という名前を付けると、generated#_html_file.html
次のエラー メッセージが表示されます。
なぜそれが起こるのですか?どうすれば回避できますか?
qt - LinuxのQDesktopServicesバックエンド?
で URL を開くために使用されるものは何QDesktopServices::openUrl(...)
ですか?
xdg-open、kopen、selmademachanism、またはそれらの組み合わせ? xdg-open が機能しないスキームで失敗するため、質問します。
編集: さらに興味をそそられます: 欠落しているスキームはデバッグ モードでは機能しますが、リリース モードでは機能しません...
コード例:
security - ユーザーのマシンでデスクトップ アプリケーションをホワイトリストに登録する
InstallJammer によって構築されたデスクトップ アプリケーションがあります。アプリケーションは問題ありませんが、ユーザーのマシンにインストールすると、ユーザーのマシンのウイルス対策がアプリケーションによって作成されたサービスを停止し、サーバーとの通信を停止します。マシンへのリスクとして扱われず、ウイルス対策によって停止されないように、ホワイトリストに登録する必要があります。
私がこれまでに知っていることは、
- このプロセスには証明書を使用してアプリケーションを認証する手順があるため、アプリケーションに「パブリッシャー」を追加すると、リスクが低いものとして扱われるのに役立つ場合があります。(これが正しいかどうかはわかりませんが、このリンクを参照しました)
- それについてグーグルで検索すると、アプリケーションに登録するように求めているウイルス対策サイトがいくつか見つかりました。
私の質問:
- 「発行者」を追加すると、私の目的に役立ちますか? はいの場合、どのように私のアプリケーションをホワイトリストに登録しますか?
- 上記のオプションが機能しない場合、すべてのウイルス対策ソフトウェア製品でホワイトリストに登録する必要がありますか?
c++ - Qt のデフォルト プログラムを使用してサーバー上のファイルを開くにはどうすればよいですか?
私が読んだものはすべてQDesktopServices::openUrl
、デフォルトのプログラムを使用してドキュメントを開くためのプラットフォームに依存しない方法であることを示しており、ほとんどの場合、うまく機能します.
ネットワークパスを渡すと常に失敗するように見えるため、ほぼと言います。ソースを調べてみると、ShellExecuteがエラー コード 2 を返していることがわかります。
例:
ネットワーク パスをクリーンアップして正しく開く方法はありますか? WindowsでQt 4.8を実行しています。スラッシュをバックスラッシュに切り替えても役に立ちません。
qt - システムのデフォルトブラウザを取得するには?
システムのデフォルト ブラウザを取得するための Qt インターフェイスはありますか?
file://
システムのデフォルト アプリケーションではなくブラウザで URL を明示的に開きたいので、 QDesktopServices::openUrlは適していません。
URL がローカル ファイルへの参照である場合 (つまり、URL スキームが "file" の場合)、Web ブラウザではなく適切なアプリケーションで開かれます。