3

現在、C ++とQtを使用してアプリケーションを開発していますが、入力ファイルが実行可能かどうかを知る必要があります。

falseを返す拡張子をQFileInfo::isExecutable()持つファイルを除いて、ほとんどのファイルで正しく動作するものを使用しています。.msi

ファイルが実行可能かどうかを確認するにはどうすればよいですか?相互互換性の理由から、Qtでこれを行う必要があります。

4

2 に答える 2

5

まあ、MSIファイルは実際には実行可能ではありません。これは、Windowsインストーラの実行可能ファイルで使用されるドキュメント形式です。ですからQFileInfo正しいです。

あなたが解決する必要がある特定の問題は何ですか?ファイルが実行可能かどうかを知ることが役立つと思うのはなぜですか?あなたが考えている目標は何ですか?より多くの情報を提供していただければ、より良いアプローチを提案できる可能性があります。

于 2013-02-26T07:49:31.630 に答える
3

QFileInfo::isExecutable()ファイルを実行可能ファイルとして決定する方法を知っておく必要があります。

  • Windowsでは、Qtはファイルの拡張子がであるかどうかをチェックするだけで.exe、その内容はチェック.comしません。.bat

  • Unixライクなシステムでは、ファイルの属性をチェックし、実行権限を持つファイルに対してtrueを返します。

したがって、.msiWindowsでのQtを考慮すると、ファイルは実行可能ファイルではありません。

于 2013-02-26T07:49:24.860 に答える