我正在开发一个 WPF 应用程序。我想在下面的路径中的注册表中创建一个键,键,值(myapp.exe
,2710
)。
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION。
OnBeforeInstall
任何人都可以从安装程序类,方法中建议如何做到这一点。
问候
您可以使用下面的代码来创建键和放置值。
private string _subKey = "SOFTWARE\\Microsoft\\Internet Explorer\\MAIN\\FeatureControl\\FEATURE_BROWSER_EMULATION";
private string SubKey
{
get { return _subKey; }
set { _subKey = value; }
}
private RegistryKey _baseRegistryKey = Registry.LocalMachine;
private RegistryKey BaseRegistryKey
{
get { return _baseRegistryKey; }
set { _baseRegistryKey = value; }
}
private bool WriteDbToRegistry(string keyName, object value)
{
try
{
var rk = BaseRegistryKey;
var sk1 = rk.CreateSubKey(SubKey);
if(sk1 != null) sk1.SetValue(keyName.ToUpper(), value);
return true;
}
catch(Exception e)
{
MessageBox.Show("Please run your App as Administrator.", "Administrator");
return false;
}
}
bool results = WriteDbToRegistry("myapp.exe", "2710");
希望这可能会有所帮助。
安装Microsoft.Win32.Registry NuGet 包,并像这样使用它:
var keyName = @"HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION";
Registry.SetValue(keyName , "myapp.exe", 2710, RegistryValueKind.DWord);
如果缺少值,则设置该值会添加它。
您可以在文档中找到更多信息。