Lorsque vous travaillez avec des systèmes Windows, il devient souvent nécessaire d'accéder aux données du registre et de les récupérer. Le registre stocke les paramètres de configuration cruciaux, les préférences utilisateur et les informations relatives aux logiciels. Cet article vous expliquera comment vérifier en toute sécurité si une clé de registre existe et récupérer sa valeur par programme à l'aide de C.
Pour déterminer si une clé de registre existe, appelez RegOpenKeyExW. fonctionner avec le chemin d’accès clé et les autorisations préférées. Si la fonction renvoie ERROR_SUCCESS, la clé existe. S'il renvoie ERROR_FILE_NOT_FOUND, la clé n'existe pas spécifiquement. Sinon, l'existence de la clé ne peut pas être déterminée.
Une fois que vous avez confirmé l'existence d'une clé de registre, vous pouvez récupérer sa valeur par programme. La fonction spécifique à utiliser dépend du type de données de la valeur. Les types courants incluent les chaînes, les DWORD et les booléens. Voici comment récupérer chaque type :
Valeur de chaîne :
<code class="c++">std::wstring strValueOfBinDir; GetStringRegKey(hKey, L"BinDir", strValueOfBinDir, L"bad");</code>
Valeur DWORD :
<code class="c++">DWORD nValue; LONG nError = GetDWORDRegKey(hKey, L"MyDWORD", nValue, 0);</code>
Valeur booléenne :
<code class="c++">bool bValue; LONG nError = GetBoolRegKey(hKey, L"MyBool", bValue, false);</code>
N'oubliez pas d'inclure la dépendance de la bibliothèque Advapi32.lib dans votre code.
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!