どのように関係なく、ターゲットマシンのアーキテクチャのプログラムファイルのパスを取得します
-
21-09-2019 - |
質問
私はC#/。NETでプログラミングしています。私は関係なく、ターゲットマシンのアーキテクチャが何であるかをターゲットマシンからProgram Filesディレクトリを返さないことができるようにしたいです。明確にするために、私はそれは、Windowsの彼らのバージョンをbit化するものC (or whatever drive the OS is on):/Program Files
関係なくを返したいです。
私はCにインストールされていないユーザーがWindowsを実行していた場合を除き、ディレクトリ内にハードコーディングすることもできます。それは働かないドライブ
私が見つけた。
FileInfo(System.Environment.GetFolderPath(System.Environment.SpecialFolder.ProgramFiles)
私はそれが64ビットWindowsマシン上でProgram Files (x86)
フォルダを返すと考えています。
解決
コードは、ターゲットのx86にビルドがある場合を除き、私はそれがあなたのために働くだろうと思いますので、
System.Environment.GetFolderPath(System.Environment.SpecialFolder.ProgramFiles)
戻ると、それは"c:\Program Files"
を返した場合には、64ビットマシン上で"C:\Program Files (x86)"
ます。
所属していません StackOverflow