Dê uma olhada nos links a seguir, eles podem ser úteis:
- Enumerar instâncias do SQL Server em C#, usando ODBC
- Como obter uma lista de SQL Servers disponíveis usando C# (MSDN)
- Preenchendo uma lista de SQL Servers
Alternativamente, você pode alterar seu código para isso:
DataTable dt = SmoApplication.EnumAvailableSqlServers(false);
if (dt.Rows.Count > 0)
{
foreach (DataRow dr in dt.Rows)
{
Console.WriteLine(dr["Name"]);
}
}
Espero que isso resolva seu problema.