我想检查以下键的值:-
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Ranges\Range1]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Ranges\Range2]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Ranges\Range3]
[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Ranges\Range4]
这是必需的,因为当我运行一个名为“securityNT.reg”的 .reg 文件时,该文件是我项目的先决条件,它会更新这些键的值。我知道这些密钥包含受信任站点的值。
我正在使用以下代码来获取这些值:
bool flagIESettings = false;
string strKeyIESettings = @"Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Ranges";
string valRange1 = "", valRange2 = "", valRange3 = "", valRange4 = "";
using (Microsoft.Win32.RegistryKey keyIESettings = Registry.CurrentUser.OpenSubKey(strKeyIESettings))
{
foreach (string subkey_name in keyIESettings.GetSubKeyNames())
{
using (RegistryKey subkey = keyIESettings.OpenSubKey(subkey_name))
{
switch (subkey_name)
{
case "Range1" :
if (subkey.GetValue(":Range") != null)
{
valRange1 = subkey.GetValue(":Range").ToString();
}
break;
case "Range2" :
if (subkey.GetValue(":Range") != null)
{
valRange2 = subkey.GetValue(":Range").ToString();
}
break;
case "Range3":
if (subkey.GetValue(":Range") != null)
{
valRange3 = subkey.GetValue(":Range").ToString();
}
break;
case "Range4":
if (subkey.GetValue(":Range") != null)
{
valRange4 = subkey.GetValue(":Range").ToString();
}
break;
default:
break;
}
}
}
}
if (valRange1 == "10.237.24.165" && valRange2 == "10.237.24.166" && valRange3 == "10.237.24.167" && valRange4 == "10.237.24.168")
{
flagIESettings = true;
}
我正在使用 Registry.CurrentUser 来获取值,HKEY_CURRENT_USER
但是这个对象(keyIESettings)正在从HKEY_USERS\S-1-5-20
. 这是我想从中获取值HKEY_CURRENT_USER
但从 HKEY_USERS\S-1-5-20 获取值的主要问题。
我观察到HKEY_CURRENT_USER
和HKEY_USERS\S-1-5-21-507921405-1993962763-682003330-1014
我的机器上是同步的,可能是因为它是当前用户。如果对象从中获取值,HKEY_USERS\S-1-5-21-507921405-1993962763-682003330-1014
那么我的目的就完成了。请让我知道如何从HKEY_CURRENT_USER
或HKEY_USERS\S-1-5-21-507921405-1993962763-682003330-1014