私は古いアプリのアップデートに取り組んでいます。それは、アプリケーションと同じディレクトリにあるいくつかの依存関係ファイルを持っています。明らかに、これはWindows Vistaが出てきたときに破った(APIに違反し、Vista/7がこれを強制する(XPはそうでない)ので)。クロスプラットフォームの方法で依存ファイルを処理するにはどうすればよいですか?
理想的には、私はちょうどWindowsのためのアプリに何かをハードコーディングしないようにしたいと思います。もし私が持っていれば私はそれで生きることができます。私はすでにAPPDATAとLOCALAPPDATA環境変数を引っ張ってその道をたどってきましたが、彼らはあなたに現在のユーザー領域を与えて以来、何の助けにもなりません...私はこれらをすべてのユーザーのどこかにアクセス可能にするために必要とし、彼らはすべてのユーザーappdata領域に入るWindows APIの期待に従っています。
提案?
私たちはMac OS Xと* nixオペレーティングシステムもサポートしていますので、実際には完全にクロスプラットフォームな単一の方法でやりたいと思います。しかし、OSに依存したコーディングをしなければならないと、私はそれを使って暮らすことができます。 まだ、すべてのユーザーappdataストアを指すシステム環境変数が見つかりませんでした。私は実際には、それがエラーの起こりやすいプロセス(特に、MicrosoftがWindowsの将来のバージョンで何らかの理由で場所を変更する場合)であるように思えるので、自分で構築しようとは思わない。 –