none
Problema al leer registro de LocalMachine en windows 7

    Question

  • Buenas! Mi problema es el siguiente: Quiero acceder obtener los valores de la subclave de localMachine SOFTWARE\Microsoft\Microsoft SQL Server, en particular de InstalledInstances. La cosa es que tengo mi aplicación hecha (funciona en windows xp) pero cuando la uso en windows 7 el GetValue("InstalledInstances) de mi llave de registro me devuelve null (siendo que si yo entro manualmente por el regEdit y miro los valores de InstalledInstances tengo instancias instaladas.

    Sospecho que es un problema de permisos que no he podido solucionar con un simple clic derecho-->ejecutar como administrador.

    La cuenta desde la cual ejecuto la aplicación es Admin.

    Desde ya muchas gracias.

    Saturday, September 03, 2011 2:17 PM

Answers

All replies

  • o se quieres obtener las instancias de sql server ?

    si es asi no necesitas aceder a la registry, existe funcionalidad para esto

     

    Enumerating Instances of SQL Server 

    analiza el link pero creo que eso evitara este problema que planteas

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina
    Saturday, September 03, 2011 2:33 PM
  • o se quieres obtener las instancias de sql server ?

    si es asi no necesitas aceder a la registry, existe funcionalidad para esto

     

    Enumerating Instances of SQL Server 

    analiza el link pero creo que eso evitara este problema que planteas

     

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    Buenas! intenté usar SqlDataSourceEnumerator pero hasta ahora sin frutos. Como se puede apreciar en la imagen adjunta obtengo solamente el ServerName, al parecer no obtengo ningun InstanceName porque  :

    InstanceName

    Name of the server instance. Blank if the server is running as the default instance.

    En fin no me sirve para tener una lista de las instancias (SQLEXPRESS según el registry).

     

    Tuesday, September 06, 2011 9:35 PM
  • Hola Juanma, 

    Este código te devuelve las correctas, que es lo mismo que indico Leandro.

     

     System.Data.Sql.SqlDataSourceEnumerator instance =    System.Data.Sql.SqlDataSourceEnumerator.Instance;
     DataTable t =  instance.GetDataSources();
    


    En el objeto t del tipo DataTable tendrás una fila por cada una de las instancias de SqlServer, que es lo mismo que aparece cuando tu creas una nueva conexion o te conectas desde Sql Server que es lo que te muestro en la siguiente imagen.

    Saludos,


    phurtado
    Tuesday, September 06, 2011 9:53 PM
    Moderator