我想禁用注册表,可这条语句Reg->WriteCurrency("DisableRegistryTools",1);抛出异常,我是想写DWORDW值,请问,我应用什么方法?
我想禁用注册表,可这条语句Reg->WriteCurrency("DisableRegistryTools",1);抛出异常,我是想写DWORDW值,请问,我应用什么方法?
TRegistry *Reg=new TRegistry();
Reg->RootKey=HKEY_CURRENT_USER;
if(Reg->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System",false))
{
ShowMessage("读取注册表错误!!!");
Reg->CloseKey();
delete Reg;
return;
}
Reg->WriteCurrency("DisableRegistryTools",1);
Reg->CloseKey();
delete Reg;
return;
问题点数:20、回复次数:8Top
1 楼kingcaiyao(aking)回复于 2003-06-03 22:07:20 得分 0
用WriteIntegerTop
2 楼warton(创业群13734424 http://www.anywhy.cn)回复于 2003-06-03 22:16:22 得分 0
Reg->Writeinteger
Reg->WriteString()都可以吧,为什么用 Reg->WriteCurrency("DisableRegistryTools",1);
呢??
Top
3 楼zywx(Waterun)回复于 2003-06-03 23:25:02 得分 0
yes!Top
4 楼snowman_pc(cpp)回复于 2003-06-04 20:36:17 得分 0
Reg->Writeinteger("DisableRegistryTools",1);也是错的,Top
5 楼qibo999(行路者)回复于 2003-06-04 20:48:09 得分 0
应该是WriteInteger(),或者WriteBool(),WriteCurrency()是写REG_BINARY的。Top
6 楼teatool(美貌与智慧并重,英雄与侠义的化身)回复于 2003-06-04 20:48:54 得分 0
我连知都不知道楼主用的这个方法呢,快告诉我们是干什么的吧Top
7 楼snowman_pc(cpp)回复于 2003-06-04 20:59:30 得分 0
事实上我没有写错,
TRegistry *Reg=new TRegistry();
Reg->RootKey=HKEY_CURRENT_USER;
if(Reg->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System",false))
{
ShowMessage("读取注册表错误!!!");
Reg->CloseKey();
delete Reg;
return;
}
Reg->WriteInteger("DisableRegistryTools",1);
Reg->CloseKey();
delete Reg;
return;Top
8 楼qibo999(行路者)回复于 2003-06-04 21:25:10 得分 20
我试过,用WriteInteger()没问题。
不过你的代码有点问题,应该是:
if(Reg->OpenKey("Software\\Microsoft\\Windows\\CurrentVersion\\Policies\\System",false) == 0)
{
...
}Top




