注册表很奇怪的问题,这段代码执行以后会有什么结果?
procedure TRegEntity.DeleteKeyFromRegistry;
var
fTempReg:TRegistry;
begin
fTempReg:=TRegistry.Create;
fTempReg.RootKey:=HKEY_LOCAL_MACHINE;
fTempReg.DeleteKey('SOFTWARE\ODBC\ODBC.INI\'+fODBCName); //删除名为fODBCName的ODBC
fTempReg.CloseKey;
fTempReg.OpenKey('SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources\',false);//
fTempReg.DeleteValue(fODBCName); //删掉在控制面板数据源配置框里的显示项
fTempReg.CloseKey;
fTempReg.OpenKey('SOFTWARE\Informix\SqlHosts\',false);//删除Informix客户端的相关配置
fTempReg.DeleteKey(fServer);
fTempReg.CloseKey;
fTempReg.Destroy;
end;
这段代码是我用来删除一些写入注册表的东西,以前执行得好好的,最近竟然一执行就把我注册表Software键下面从ODBC开始的所有子键全部删除掉了,害得我重新安装了两次系统,这是怎么回事?
高手请指点一下,谢谢!