0
我运行的系统帐户下运行试图访问以下注册表键C#服务:在作为服务运行的注册表中访问CLSID。
\ CLSID {8E7FE1EC-79FA-43DF-9452-B71542599B3C} \ InProcServer32中\
重点存在,我可以在单元测试期间访问它(单元测试在当前用户下运行)。该服务可以访问类根中的其他键,但是当我尝试访问CLSID子项中的任何内容时,它将失败。
var regPermission = new RegistryPermission(RegistryPermissionAccess.AllAccess,
@"HKEY_CLASSES_ROOT\" + regPath);
regPermission.Demand();
using (var regKey = rootKey.OpenSubKey(regPath))
{
if (regKey != null)
{
string defaultValue = (string)regKey.GetValue("");
{
return defaultValue;
}
}
else
{
Logger.Info("Unable to open " + regPath);
}
}
对于任何CLSID下我的代码将返回“无法打开” + regPath ..
任何提示,为什么将不胜感激
那么,只是节省了我一个棚子的时间负荷。谢谢 –