ファイルタイプに関連付ける必要があるpythonでアプリケーションを作成しています。ファイル タイプのアイコンの設定、そのタイプのファイルをダブルクリックしたときにアプリケーションを開く、アプリケーションを開いたときにそのファイルを参照できる、クロス プラットフォーム ソリューション (プラットフォームによって異なる場合があります) が必要です。 .
明確にするために
、ファイルを編集する FooEdit というアプリケーションがあるとしましょう.foo
。.foo
ファイルの MIME タイプはtext/plain
. ユーザーが最初に FooEdit を取得したときに発生するプロセスは次のとおりです。
- Linux、Windows、OS X のいずれであっても、ユーザーは自分のアプリケーションの実行可能ファイルを取得します。
- Python スクリプトは次のように実行されます。
.foo
ファイル拡張子のデフォルト アプリケーションとして FooEdit (実行可能ファイル) を設定します。- ファイルのアイコン
.foo
を foofileicon.png (または foofileicon.ico の方がうまく機能する場合) に設定します。
- 同じユーザーがファイルをダブルクリックし
.foo
ます。 - FooEdit は、その
argv
配列内のファイルへのパスで開きます (私は PyQt4 を使用しています)
この質問を見たことがありますが、それは Mac OS X のみに言及しており、ユーザーは手動で行う必要があります。ソリューションが 3 つの主要なプラットフォーム (Linux、Windows、OS X) すべてで機能することを望んでおり、それが実行されることを望んでいますpythonスクリプトによって自動的に。
そのような目的で Windows レジストリに値を挿入することについても聞いたことがありますが、私のプログラムの Windows バージョンではそれを行っても問題ありません。ただし、Mac と Linux で同じことを行う方法については、まだわかりません。
すべてのプラットフォームで機能する単一のソリューションが必要ですが、それが不可能な場合があることは承知しています。