Perdon por discrepar. Entiendo que el instalador pueda tener el problemas de determinar que tipo servidor es (2K, 2K5 2K9) o que por ser remoto no tengas instalados los clientes de SQL y por ello quieras usar un mecanismo alternativo como la registry.
Sin embargo WMI y DMO no me parecen adecuados dado que varian las versiones y puede haber problemas de compatibilidad de componentes o temas de servicios o de permisos. A mi criterio es preferible usar una libreria de SQL que soporta conectarse a todas las versiones y hace las preguntas de version al propio SQL. Esto lo hacen muchos programas de instalacion con buenos resultados. -- -------------------------------- Ing. José Mariano Alvarez http://blog.josemarianoalvarez.com/ http://twitter.com/JoseMarianoA Microsoft MVP SQL Total Consulting 2009/9/3 Vega Diego Raul <[email protected]> > Es que usando wmi o dmo te olvidas de donde guarda sql esos parámetros, > simplemente los consultas y listo, es el mismo caso de usar las tablas de > sistema del motor, para eso se hicieron las funciones que las manejan. > > > > > > > > *Saludos …* > > * * > > *Diego Vega*** > > Administración de Servidores y BD > > Gerencia de Tecnología y Sistemas > > t: 0351 420 7119 / int. 7119 > > > > > > > ------------------------------ > > *De:* [email protected] [mailto:[email protected]] *En nombre de *PabloC > *Enviado el:* Jueves, 03 de Septiembre de 2009 04:49 p.m. > *Para:* Vega Diego Raul > *Asunto:* [dbms] SP1 de SQL2008 > > > > Si maxi, ya lo se, hasta ahora con servers con 2000 lo hacia leyendo > justamente la registry > > Cual es el problema de hacerlo asi? > > > > Saludos > > PabloC > > > > *De:* [email protected] [mailto:[email protected]] *En nombre de *Maxi Accotto > *Enviado el:* Jueves, 03 de Septiembre de 2009 16:39 > *Para:* pablo.canonico > *Asunto:* [dbms] SP1 de SQL2008 > > > > Hola pero para hacer eso no necesitas leer la regestry amigo! Si el > instalador quiere saber si hay un sql o cuantos SQL hay y asi determinar que > hacer usa el modelo de objetos SMO o DMO > > > > > > > > *Maximiliano Damian Accotto* > > *Microsoft MVP en SQL Server* > > *http://Blog.Maxiaccotto.com <http://blog.maxiaccotto.com/>* > > > > *De:* [email protected] [mailto:[email protected]] *En nombre de *PabloC > *Enviado el:* jueves, 03 de septiembre de 2009 04:09 p.m. > *Para:* Maxi > *Asunto:* [dbms] SP1 de SQL2008 > > > > Mariano, lo que me respondió es lo mismo que yo ya sabia y que en el mismo > mail mostre que ya lo consultaba desde el Management Studio > > Lo de saberlo desde la registry es para instrumentar un instalador que > necesitaba saber si el SQL es 2000/2005 o 2008 y dependiendo de eso hacer > diferentes cosas > > > > Saludos > > PabloC > > > > *De:* [email protected] [mailto:[email protected]] *En nombre de *Jose Mariano > Alvarez > *Enviado el:* Jueves, 03 de Septiembre de 2009 15:58 > *Para:* pablo.canonico > *Asunto:* [dbms] SP1 de SQL2008 > > > > Te contesto con la informacion oficial de como obtener la info que querias. > > > > Por que quieres usar la Registry > > > > > > Saludos > > > > > -- > -------------------------------- > Ing. José Mariano Alvarez > http://blog.josemarianoalvarez.com/ > http://twitter.com/JoseMarianoA > Microsoft MVP > > SQL Total Consulting > Bogota 3631 P3B > 1407 Buenos Aires-Argentina > Movil: (011)-15-4184-7541 > Desde el exterior: (+54-911)-4184-7541 > [email protected] > > 2009/9/3 PabloC <[email protected]> > > Gracias Diego, pero que tiene que ver con lo que yo pregunte??? > > > > Saludos > > PabloC > > > > *De:* [email protected] [mailto:[email protected]] *En nombre de *Vega Diego > Raul > *Enviado el:* Jueves, 03 de Septiembre de 2009 14:28 > *Para:* pablo.canonico > > > *Asunto:* [dbms] SP1 de SQL2008 > > > *How to identify your SQL Server version and edition* > > http://support.microsoft.com/default.aspx/kb/321185 > > > > For example, the results resemble the following. > > 10.0.1600.22 > > RTM > > Enterprise Edition > > The following table lists the Sqlservr.exe version number. > > *Release* > > *Sqlservr.exe* > > RTM > > 2007.100.1600.0 > > SQL Server 2008 Service Pack 1 > > 2007.100.2531.0 > > > > > > > > *Saludos …* > > * * > > *Diego Vega* > > Administración de Servidores y BD > > Gerencia de Tecnología y Sistemas > > t: 0351 420 7119 / int. 7119 > > > > > > > ------------------------------ > > *De:* [email protected] [mailto:[email protected]] *En nombre de *PabloC > *Enviado el:* Martes, 01 de Septiembre de 2009 04:30 p.m. > *Para:* Vega Diego Raul > *Asunto:* [dbms] SP1 de SQL2008 > > > > Hola a todos > > Para saber que version de SQL tengo instalada en un PC en la registry en > > HKLM "SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion" > "CurrentVersion" me dice 8.00.194 esto significa que es un SQL2000 y en > HKLM "SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\CurrentVersion" > "CSDVersion" me dice 8.00.2039 esto es Service Pack 4 > > > > En una PC con SQL2008 en CurrentVersion me dice 10.0.2531.0 y NO existe > ninguna entrada como la del SQL2000 con CSDVersion para saber el ServicePack > > > > Alguno sabe como detectar esto? > > > > Si ejecuto desde el Management Studio lo siguente > > Declare @cValor SQL_Variant > > Set @cValor =(SELECT SERVERPROPERTY('ProductLevel')) > > Print 'ProductLevel : ' + Cast(@cValor As Varchar(100)) > > Print '' > > > > Set @cValor =(SELECT @@VERSION) > > Print 'Version : ' + Cast(@cValor As Varchar(100)) > > Print '' > > > > Set @cValor =(SELECT SERVERPROPERTY('ProductVersion')) > > Print 'ProductVersion : ' + Cast(@cValor As Varchar(100)) > > Print '' > > > > Set @cValor =(SELECT SERVERPROPERTY('Edition')) > > Print 'Edition : ' + Cast(@cValor As Varchar(100)) > > Print '' > > > > Me devuelve > > ProductLevel : SP1 > > > > Version : Microsoft SQL Server 2008 (SP1) - 10.0.2531.0 (X64) > > Mar 29 2009 10:11:52 > > Copyright (c) 1988-2008 > > > > ProductVersion : 10.0.2531.0 > > > > Edition : Developer Edition (64-bit) > > > > Por lo cual es un SQL2008 con su correspondiente SP1 > > > > Saludos > > PabloC > > > > >
