Accedere al registro di Windows utilizzando T-SQL

Sql Server prevede una serie di stored procedure di sistema per svolgere funzioni di amministrazione del server, gestione della posta elettronica, esecuzione di comandi di sistema, etc., alcune delle quali anche non documentate, e che possono tornare utili in diverse occasioni. Poichè si tratta di una applicazione basata su COM utilizza il registro di sistema per memorizzare informazioni vitali per il suo funzionamento. Attraverso una store procedure non documentata chiamata xp_regread è possibile leggere il valore di una qualsiasi chiave di registro, utilizzando il tal modo solo codice T-SQL. Lo script seguente legge il contenuto della chiave utilizzata da Sql Server per memorizzare il percorso fisico di installazione.

T-SQL

   1: declare @sqlpath varchar(200)
   2: exec master..xp_regread @root='HKEY_LOCAL_MACHINE', 
   3:     @key='SOFTWARE\MICROSOFT\MICROSOFT SQL SERVER\80\TOOLS\CLIENTSETUP', 
   4:     @value_name='SqlPath', @value=@sqlpath OUT 

Il parametro di output @value conterrà il contenuto della chiave chiamata SqlPath situata nel percorso 'SOFTWARE\MICROSOFT\MICROSOFT SQL SERVER\80\TOOLS\CLIENTSETUP'

T-SQL

   1: print @sqlpath 

Print | posted on Monday, October 26, 2009 12:48 AM

Comments on this post

No comments posted yet.

Your comment:

 (will show your gravatar)
 
Please add 5 and 5 and type the answer here: