Solarion
Honorary Master
- Joined
- Nov 14, 2012
- Messages
- 21,886
I have this neat little method to find the SQL instances on a local machine and display them in a list.
One problem. My server is called "DEV1\SQLEXPRESS" but this method only returns "DEV1"
Any thoughts? Perhaps the server is named wrong?
Edit: References:
Code:
Private serverItems As New List(Of String)
Public Sub CheckServers() Handles bgworker.DoWork
Try
Dim instance As SqlDataSourceEnumerator = SqlDataSourceEnumerator.Instance
Dim table As System.Data.DataTable = instance.GetDataSources()
For Each row As System.Data.DataRow In table.Rows
If Not IsDBNull("ServerName") AndAlso Environment.MachineName.Equals(row("ServerName").ToString()) Then
Dim item As String = String.Empty
item = row("ServerName").ToString()
If Not IsDBNull(row("InstanceName")) OrElse Not String.IsNullOrEmpty(Convert.ToString(row("InstanceName")).Trim()) Then
item += "\" + Convert.ToString(row("InstanceName")).Trim()
End If
serverItems.Add(item.ToString())
End If
Next
Catch ex As Exception
MessageBox.Show("No Servers Found.")
End Try
End Sub
One problem. My server is called "DEV1\SQLEXPRESS" but this method only returns "DEV1"
Any thoughts? Perhaps the server is named wrong?
Edit: References:
Imports System.Data.Sql
Imports System.ComponentModel