Détecter instances locales de SQL Server

Le
The Best Poster
Bonjour,

Je développe une application en C# qui doit être capable de détecter
les instances de SQL server sur le réseau pour pouvoir me connecter à
une base de données.

Le code ci-dessous fonctionne, mais il ne détecte que les bases
visibles via le réseau. Je voudrais aussi détecter les bases qui
peuvent être installées en local sur le poste qui fait la détection.
Que dois je modifier ou ajouter dans mon code ?

Merci de votre aide.

cmbListOfMachines est une combobox


// Retrieve list of instances of sql server on network and display
them in combobox
Cursor = System.Windows.Forms.Cursors.WaitCursor;
SqlDataSourceEnumerator sqlenum =
SqlDataSourceEnumerator.Instance;
DataTable dtsql = sqlenum.GetDataSources();
cmbListOfMachines.Items.Clear();
foreach (DataRow row in dtsql.Rows)
{
if (row["InstanceName"].ToString() != "") // Display
only if an instance is found
{
//cmbListOfMachines.Items.Add(row["ServerName"] +
"\ " + row["InstanceName"] + " (" + row["Version"] + ")");
cmbListOfMachines.Items.Add(row["ServerName"] + "\
" + row["InstanceName"]);

}
}
Cursor = System.Windows.Forms.Cursors.Default;
}
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
The Best Poster
Le #21216351
The Best Poster vient de nous annoncer :
Bonjour,

Je développe une application en C# qui doit être capable de détecter les
instances de SQL server sur le réseau pour pouvoir me connecter à une base de
données.

Le code ci-dessous fonctionne, mais il ne détecte que les bases visibles via
le réseau. Je voudrais aussi détecter les bases qui peuvent être installées
en local sur le poste qui fait la détection. Que dois je modifier ou ajouter
dans mon code ?

Merci de votre aide.




Pour info, on peut trouver le nom des instances dans la base de
registre :
HKEY_LOCAL_MACHINESoftwareMicrosoftMicrosoft Sql ServerInstances
NamesSQL ...

En plaçant localhost devant, on arrive à se connecter à l'instance
locale de son SQL Server.
Publicité
Poster une réponse
Anonyme