18 domande
Una routine funzionante su Windows 7 non funziona su Windows 10
Mauro Schivalocchi
25
Punti di reputazione
Ho una routine che mi individua tutti i server SQL installati nel mio sistema.
vb.net 2019
#Region "ENUMERAZIONE SERVER"
Public Shared tblServer As Data.DataTable
''' <summary>
''' Ricerca server Sql nella rete
''' </summary>
''' <remarks>
''' I server Sql/Express trovati nella rete vengono elencati in tabella "SqlDataSources"
''' colonne ServerName,InstanceName,IsClustered,Version
''' </remarks>
Public Shared Function SqlEnumerator() As Integer
'If My.Computer.Network.IsAvailable = False Then Return tblServer.Rows.Count 'se la rete non è disponibile esce
Try
Console.WriteLine(" ENUMERAZIONE ISTANZE SQL IN RETE")
' Ricerca tutti i server nella rete e ne rileva le istanze
Dim instance As Sql.SqlDataSourceEnumerator = Sql.SqlDataSourceEnumerator.Instance
' Trasferisce i dati dei server trovati nella tabella SqlDataSources
tblServer = instance.GetDataSources()
For Each RowServer As DataRow In tblServer.Rows
Console.Write(" ServerName\InstanceName:") : Console.Write(RowServer("ServerName"))
Console.Write("\") : Console.Write(RowServer("InstanceName"))
Console.Write(" IsClustered:") : Console.Write(RowServer("IsClustered"))
Console.Write(" Version:") : Console.WriteLine(RowServer("Version"))
Next
Console.WriteLine(" Server trovati " & tblServer.Rows.Count)
Return tblServer.Rows.Count
Catch ex As Exception
Console.WriteLine(ex.Message)
Return tblServer.Rows.Count
End Try
End Function
#End Region
Questa routine Funziona perfettamente su un sistema Windows7 con SQL Server 2005 ovvero, l'azione della routine mi carica sulla Tabella SqlDataSource tutti i server trovati con le relative proprietà. Se nessun server viene trovato, la funzione restituisce un valore Zero che utilizzo per inibire l'accesso alla selezione di una finestra per database SQL.
Al contrario, su un sistema Windows 10 con SQL SERVER 2019 la routine mi restituisce sempre un valore 'zero' ovvero non trova nessun server.
Nessun errore viene evidenziato, infatti la Try/Catch non mi segnala alcun errore.
è possibile che la routine non sia compatibile?
Grazie per la risposta
Tecnologie per sviluppatori | Visual Studio | Altro
Accedi per rispondere