Para leer las claves del registry hay que ejecutar una Extended Stored Procedure no documentada de la base de datos Master, xp_regread:
EXECUTE xp_regread [@rootkey=]'rootkey',
[@key=]'key'
[, [@value_name=]'value_name']
[, [@value=]@value OUTPUT]
EXEC xp_regread 'HKEY_LOCAL_MACHINE',
'SOFTWARE\Microsoft\Microsoft SQL Server\80\Tools\ClientSetup\CurrentVersion',
'CurrentVersion'
EXECUTE xp_regwrite [@rootkey=]'rootkey',
[@key=]'key',
[@value_name=]'value_name',
[@type=]'type',
[@value=]'value'
EXECUTE xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Microsoft SQL Server\80\Tools\ClientSetup\CurrentVersion', 'PEPE', 'REG_SZ', 'BOTELLA'
Borrar xp_regdeletevalue, este Extended Stored Procedure permite borrar un valor de una determinada clave del registry,
EXECUTE xp_regdeletevalue [@rootkey=]'rootkey',
[@key=]'key',
[@value_name=]'value_name'
EXECUTE xp_regdeletevalue 'HKEY_LOCAL_MACHINE',
'SOFTWARE\Microsoft\Microsoft SQL Server\80\Tools\ClientSetup\CurrentVersion',
'PEPE'
EXECUTE xp_regdeletekey [@rootkey=]'rootkey',
[@key=]'key'
EXECUTE xp_regdeletekey 'HKEY_LOCAL_MACHINE',
SOFTWARE\Microsoft\Microsoft SQL Server\80\Tools\ClientSetup\Pruebas'
Nota: Estos Extended Stored Procedures interactúan directamente con el registry, es conveniente no jugar con el registry porque podemos tener graves problemas y corromper el sistema por eso queda a vuestro riesgo el jugar con él.
Y esto es todo, feliz programming!!
Saludos
Alex