sql server注册表操作相关的几个未公开过程

王朝mssql·作者佚名  2008-08-27
宽屏版  字体: |||超大  

DECLARE @test varchar(20)

EXEC master..xp_regread @rootkey='HKEY_LOCAL_MACHINE',

@key='SOFTWARE\Test',

@value_name='TestValue',

@value=@test OUTPUT

SELECT @test

-- 1. 枚举所有的 Keys

xp_instance_regenumkeys

'HKEY_LOCAL_MACHINE', -- 根, 注册表固定有下面几个

-- HKEY_CLASSES_ROOT

-- HKEY_CURRENT_USER

-- HKEY_LOCAL_MACHINE

-- HKEY_USERS

'SYSTEM' -- 子键, 如果为 NULL, 表示列出根下面的第1层子键

-- 2. 枚举所有的键值及数据

xp_regenumvalues

'HKEY_LOCAL_MACHINE', -- 根, 注册表固定有下面几个

-- HKEY_CLASSES_ROOT

-- HKEY_CURRENT_USER

-- HKEY_LOCAL_MACHINE

-- HKEY_USERS

'SYSTEM' -- 子键, 如果为 NULL, 表示列出根下面的第1层子键

-- 每个键值为一个结果集, 注意, 一般的键值有两列, 有的键值有多列

-- 3. 读取键值

DECLARE @re varchar(8000)

EXEC xp_regread

'HKEY_CLASSES_ROOT', -- 根, 注册表固定有下面几个

-- HKEY_CLASSES_ROOT

-- HKEY_CURRENT_USER

-- HKEY_LOCAL_MACHINE

-- HKEY_USERS

'*', -- 子键, 如果为 NULL, 表示列出根下面的第1层子键

'QuickTip', -- 键值, 如果只指定前面两项, 则用于判断某个 Key 是否存在

@re OUT -- 保存结果的变量, 如果不指定, 则输出为结果集

SELECT @re

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有