ホームページ > バックエンド開発 > C++ > 64 ビット Windows でプログラム ファイル (x86) の場所を確認する方法

64 ビット Windows でプログラム ファイル (x86) の場所を確認する方法

Linda Hamilton
リリース: 2024-12-30 16:57:14
オリジナル
330 人が閲覧しました

How to Programmatically Determine the Program Files (x86) Location in 64-bit Windows?

Windows 64 ビットでのプログラム ファイル (x86) の場所の決定

アプリケーションの存在を検出するために、`FileInfo(

を利用しています。 >
System.Environment.GetFolderPath(
    System.Environment.SpecialFolder.ProgramFiles) 
+ @"\MyInstalledApp"
ログイン後にコピー

)`。このアプローチは 32 ビット Windows バージョンには適切ですが、x64 Windows Vista では問題が発生し、目的の Program Files (x86) の場所ではなく x64 Program Files フォルダーが取得されます。

これを解決するには、次のようにします。 「C:Program Files」のハードコーディングに頼らずに、Program Files (x86) へのパスを取得するプログラム的な方法を見つける必要があります。 (x86)".

解決策

次の関数は、この要件を適切に満たします:

static string ProgramFilesx86()
{
    if( 8 == IntPtr.Size 
        || (!String.IsNullOrEmpty(Environment.GetEnvironmentVariable("PROCESSOR_ARCHITEW6432"))))
    {
        return Environment.GetEnvironmentVariable("ProgramFiles(x86)");
    }

    return Environment.GetEnvironmentVariable("ProgramFiles");
}
ログイン後にコピー

この関数は、3 つの異なるシナリオで x86 プログラム ファイル ディレクトリを確実に返します。

  • 32 ビットWindows
  • 64 ビット Windows 上で実行される 32 ビット プログラム
  • 64 ビット Windows 上で実行される 64 ビット プログラム

以上が64 ビット Windows でプログラム ファイル (x86) の場所を確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート