ユーザーのマシン上のソフトウェアの存在を確認しようとするとき、パスを使用します。 System.Environment.GetFolderPath(System.Environment.SpecialFolder.ProgramFiles)MyInstalledApp は、 64 ビット Windows Vista では不正確になる可能性があります。これは、問題のアプリケーションが「Program Files (x86)」に存在するのに対し、コードは x64 の「Program Files」フォルダーを返すためです。
この問題を軽減するには、次の関数を使用できます。すべての構成にわたる x86 "Program Files" ディレクトリを返します:
static string ProgramFilesx86() { if (8 == IntPtr.Size || (!String.IsNullOrEmpty(Environment.GetEnvironmentVariable("PROCESSOR_ARCHITEW6432")))) { return Environment.GetEnvironmentVariable("ProgramFiles(x86)"); } return Environment.GetEnvironmentVariable("ProgramFiles"); }
この例ではfunction:
以上が64 ビット Windows で「Program Files (x86)」パスを確実に取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。