读书人

帮帮忙吧写注册表的有关问题

发布时间: 2012-01-10 21:26:51 作者: rapoo

帮帮忙吧,写注册表的问题。
要将产品的Version 信息写入注册表。但是报无法写入注册表错误。
给出的提示: 请有足够的权限可以存取这些资源。如果要存取档案,请确定它不是只读。

private void btnRegedit_Click(object sender, EventArgs e)
{
int i = 0;
bool bHasSetup = false;

string szSubKeys;
RegistryKey parentkey;

parentkey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey( "SoftWare ").OpenSubKey( "DataWin ").OpenSubKey( "EIP ");
string[] szSubKeyNames = parentkey.GetSubKeyNames();
for (int j = 0; j < szSubKeyNames.Length; j++)
{
if (szSubKeyNames[j] == "EIPNotify ")
{
parentkey.OpenSubKey( "EIPNotify ");
szSubKeys = parentkey.GetValue( "Path ", " ").ToString();
if (szSubKeys == " ")
{

parentkey.SetValue( "Version ", "\\EIPNotify.exe ");//这儿出错。
parentkey.SetValue( "Path ", "\\EIPNotify.exe ");



}
}
}
}


[解决办法]
你运行程序的用户的权限能不能对注册表进行修改?

[解决办法]
public RegistryKey OpenSubKey(
string name,
bool writable
);

第二个参数是是否能写,当然要设置为true了

读书人网 >C#

热点推荐