Maison > développement back-end > C++ > Comment obtenir de manière fiable le chemin des fichiers programme (x86) sous Windows 64 bits ?

Comment obtenir de manière fiable le chemin des fichiers programme (x86) sous Windows 64 bits ?

Linda Hamilton
Libérer: 2024-12-28 04:51:10
original
292 Les gens l'ont consulté

How to Reliably Get the Program Files (x86) Path in 64-bit Windows?

Obtenir le chemin des fichiers programme (x86) dans Windows 64 bits avec C

Déterminer l'emplacement des programmes installés peut être difficile, en particulier sous Windows 64 bits où le Le dossier Program Files par défaut peut ne pas contenir les programmes compatibles x86. Ce problème nous invite à trouver une solution pour récupérer par programme le chemin d'accès au répertoire Program Files (x86).

Dans l'extrait de code fourni, le chemin du dossier spécifié ne parvient pas à détecter les programmes installés dans Program Files (x86) sur Windows Vista 64 bits. En effet, le code renvoie le chemin d'accès au dossier x64 Program Files, alors que les applications souhaitées résident dans la version x86.

Solution

Pour résoudre ce problème, une fonction personnalisée est introduite :

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

    return Environment.GetEnvironmentVariable("ProgramFiles");
}
Copier après la connexion

Cette fonction renvoie effectivement le chemin d'accès au répertoire Program Files (x86) dans ce qui suit scénarios :

  • Windows 32 bits
  • Programme 32 bits exécuté sur Windows 64 bits
  • Programme 64 bits exécuté sur Windows 64 bits

La fonction s'appuie sur la variable d'environnement IntPtr.Size et PROCESSOR_ARCHITEW6432 pour déterminer l'architecture du système. Si l'architecture est x64, elle récupère le chemin du dossier Program Files (x86), sinon elle renvoie le chemin du dossier Program Files 32 bits.

En utilisant cette fonction, les développeurs peuvent désormais accéder de manière fiable au Répertoire Program Files (x86) dans les systèmes Windows 64 bits, garantissant que leurs programmes peuvent détecter et interagir correctement avec les applications compatibles x86.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal