Pobieranie listy serwerów sql

0

mój problem polega na ty, że chcę w programie mieć możliwośc przeszukania sieci i komputera lokalnego w poszukiwaniu dostępnych Źródeł danych (serwerów ms sql) znalazłem na msdn niby rozwiązanie (http://msdn.microsoft.com/en-us/library/system.data.sql.sqldatasourceenumerator.getdatasources.aspx) ale to nie wyszukuje mi instalacji sql serwera więc tutaj zadaje to pytanie jak napisać kod aby wyszukało mi instalacje serwera sql?

0

Jaka to instancja? Jaki serwer? (MSSQL?) .. sprawdź czy działa pierw.. jesteś tego pewny?

SqlDataSourceEnumerator..::.GetDataSources Method działa tylko dla

SQL Server 2000 or SQL Server 2005

oczywiscie MS...

0

a nie ma jakiejś metody dla sql server 2008?

0

zastanow sie najpierw w jaki to niby sposob chcialbys zeby Twoj program magicznie odnalazl co sie znajduje na N-dziesieciu komputerach w sieci lokalnej. przeciez to co chcez osiagnac do tego sie sprowadza!! rownie dobrze moglbys probowac sie dowiedziec, ile jest odpalonych GG i u kogo.

SqlServer realizuje owo 'wyszukiwanie' za pomoca specjalnej uslugi, programu/windowsservice'u, ktory stoi sobie gdzies-na-sieci - czesto jets taki na kazdym kompie ktory ma sqlserver uruchomiony -- i ten program nasluchuje i odpowiada na broadcasty komputerow-ktore-szukaja-serwerow.

jesli nie masz tej uslugi uruchomionej - zadne wyszukiwanie jej nie znajdzie.
sprawdz czy ja masz i czy jest uruchomiona.

niestety, nie pamietam jej nazwy - wydaje mi sie ze SqlServer Browser

0
Deti napisał(a)

SqlDataSourceEnumerator..::.GetDataSources Method działa tylko dla

SQL Server 2000 or SQL Server 2005
Według tego artykułu obsłuży też 2008:
http://www.kodyaz.com/articles/sql-server-instances-SqlDataSourceEnumerator.aspx

mój problem polega na ty, że chcę w programie mieć możliwośc przeszukania sieci i komputera lokalnego w poszukiwaniu dostępnych Źródeł danych (serwerów ms sql)
Bez uruchomienia na każdym kompie czegoś dodatkowego się nie obejdzie.

0

Ja też miałem z tym problem i w poszukiwaniu rozwiązania trafiłem tutaj. Znalazłem pewien kod i przerobiłem go pod buttona, który po naciśnięciu przeszukuje system w poszukiwaniu zainstalowanych serwerów i wypełnia ComboBoxa (u mnie comboBox1). Wystarczy podpiąć pod button_Click. Mi wykrywa SQLEXPRESS i INSERTGT.

comboBox1.Items.Clear();

            System.Data.DataTable table;
            SqlDataSourceEnumerator instance = SqlDataSourceEnumerator.Instance; 
            
            table = instance.GetDataSources();
            if (table.Rows.Count <= 0)
            {
                MessageBox.Show("Brak dostępnych serwerów baz danych");
                return;
            }

            foreach (DataRow dr in table.Rows)
            {
                comboBox1.Items.Add(dr["ServerName"] + "\\" + dr["InstanceName"]);
            }

1 użytkowników online, w tym zalogowanych: 0, gości: 1