Nombre de equipo

26/04/2006 - 00:29 por SergioT | Informe spam
Hola

dos preguntas para vb.net:

1. Como puedo obtener en vb.net el nombre de la computadora en la que esta
corriendo la aplicacion
2. Como obtengo una "lista" de los ervidores de SQL disponibles en el equipo
o en la red


gracias

Preguntas similare

Leer las respuestas

#11 SergioT
26/04/2006 - 22:23 | Informe spam
Hola

MUCHAS GRACIAS POR LA IDEA me salio muy bien, aqui esta lo que hice:

Dim sKey As String
sKey = "Software\Microsoft\Microsoft SQL
Server\80\Tools\SQLEW\Registered Servers X\Grupo de SQL Server"

Dim rk As RegistryKey
rk = Registry.CurrentUser.OpenSubKey(sKey)
Dim s As String
For Each s In rk.GetValueNames
ComboBox1.Items.Add(s)
Next


Salu2
Sergio


"MalKaViAN_NeT" escribió en el
mensaje news:
Hola SergioT con respecto a los servidores malinterprete tu pregunta y lo
que
te respondí fue la forma de obtener las BD que tiene un servidor xD!!,
Bueno ahora que entendí bien tu pregunta sobre servidores, pues te puedo
ayudar diciendote como pudes encontrar los servidores que tienens en SQL:

Esto lo puedes hacer usando la clase Regestry de VB 2003 y usando el
parametro 'HKEY_CURRENT_USER' (de la clase regestry que sirve para
add,del,rename claves del registro de Windows),en donde envías el
siguiente
path
"software\microsoft\Microsoft SQL Server\80\Tools\SQLEW\Registered Servers
X\Grupo de SQL Sever\" y lees los valores binarios que tiene esa entrada,
se
guarda en un grupo de datos luego recorriendolo con un for each obtienes
todos los servidores registrados en tu SQL.

Esto es por si quieres saber los servidores locales, si necesitas saberlo
en
red puedes hacer una aplicación multicliente-servidor donde los clientes
buscan esta entrada en la PC Local los servidores y te lo manda a tu
Server
en donde tienes un arreglo de sockets, el cual hace un Get Data y recibe
las
información registrando la ip del cliente.

Salu2
MaLkaViAn_NeT
http://malkavian-net.webcindario.com/

Respuesta Responder a este mensaje
#12 SergioT
26/04/2006 - 22:24 | Informe spam
Hola

Gracias por el Environment.MachineName no lo conocia y en cuanto a lo del
SQl t comento que la libreria a la que haces referencia solo t muestra los
servidores en la red en las computadoras Servidoras (win2000,2003) y no las
instancias de la maquina XP en la que estas. El amigo MaLkaViAn_NeT me dió
la idea de hallar las instancias en la registry del xp en esta misma
conversacion

Al final lo resolvi con el siguiente codigo por si a alguien le interesa:

Dim sKey As String
sKey = "Software\Microsoft\Microsoft SQL
Server\80\Tools\SQLEW\Registered Servers X\Grupo de SQL Server"

Dim rk As RegistryKey
rk = Registry.CurrentUser.OpenSubKey(sKey)
Dim s As String
For Each s In rk.GetValueNames
ComboBox1.Items.Add(s)
Next



Muchas gracias por tu tiempo
Salu2
Sergio

"Eduardo A. Morcillo [MS MVP VB]" <emorcillo .AT. mvps.org> escribió en el
mensaje news:
Yo uso VS2003, como hago eso con el 2003??



Environment.MachineName. Y en cuanto a lo de SQL deberas usar la libreria
(COM) SQLDMO.

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
http://mvp.support.microsoft.com/pr...4EF5A4191C

Respuesta Responder a este mensaje
#13 Eduardo A. Morcillo [MS MVP VB]
26/04/2006 - 23:12 | Informe spam
Gracias por el Environment.MachineName no lo conocia y en cuanto a lo
del SQl t comento que la libreria a la que haces referencia solo t
muestra los servidores en la red en las computadoras Servidoras
(win2000,2003) y no las instancias de la maquina XP en la que estas.
El amigo MaLkaViAn_NeT me dió la idea de hallar las instancias en la
registry del xp en esta misma conversacion



El codigo esta mal, por dos motivos. Uno es que toma el valor "Grupo de SQL
Server" (puede tener otro nombre o ni siquiera existir) como fijo y el otro
es que puede haber varios grupos. La lista completa la puedes obtener
mediante SQLDMO sin tener que complicarte con el registro:

Dim dmo As New SQLDMO.Application()

For Each serverGroup As ServerGroup In dmo.ServerGroups
For Each regServer As RegisteredServer In serverGroup.RegisteredServers
Console.WriteLine(regServer.Name)
Next
Next

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
http://mvp.support.microsoft.com/pr...4EF5A4191C
Respuesta Responder a este mensaje
#14 Lope
27/04/2006 - 09:35 | Informe spam
SergioT escribió:

1. Como puedo obtener en vb.net el nombre de la computadora en la que esta
corriendo la aplicacion



SystemInformation.ComputerName
Respuesta Responder a este mensaje
#15 MalKaViAN_NeT
27/04/2006 - 18:35 | Informe spam
...La aclaración de 'Eduardo A. Morcillo' es buena ya que el valor 'Grupo de
SQL Server' viene por defecto al instalar de manera convenvional el SQl,
pero en el caso de que personalizemos el nombre del grupo o si tenemos mas de
un grupo puede haber problemas, para hacer debos esutiar las raizes de las
claves en el regedit o con otras maneras.

Salu2
MaLkAvIaN_NeT
http://malkavian-net.webcindario.com/
www.foroschl.tk




"Eduardo A. Morcillo [MS MVP VB]" wrote:

El codigo esta mal, por dos motivos. Uno es que toma el valor "Grupo de SQL
Server" (puede tener otro nombre o ni siquiera existir) como fijo y el otro
es que puede haber varios grupos. La lista completa la puedes obtener
mediante SQLDMO sin tener que complicarte con el registro:

Dim dmo As New SQLDMO.Application()

For Each serverGroup As ServerGroup In dmo.ServerGroups
For Each regServer As RegisteredServer In serverGroup.RegisteredServers
Console.WriteLine(regServer.Name)
Next
Next

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
http://mvp.support.microsoft.com/pr...4EF5A4191C



Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida