Da ich am WE nicht an die Problem-PCs kam, leider erst jetzt die Ergebnisse.
Die Funktion sieht jetzt so aus:
Public Function IsSQLServerOnline(conn As String) As Boolean
Try
Using server As New SqlClient.SqlConnection(conn)
server.Open()
Return (server.State = ConnectionState.Open)
End Using
Catch ex As SqlClient.SqlException
modDiverses.LogErrorSchreiben(ex.Message, ex.ToString, "")
Return False
End Try
End Function Ich rufe sie, sofern False zurückgegeben wurde, bis zu 5x im Abstand von einigen Sekunden auf.
Bei Aufruf 1, 2 und 4 ist der Eintrag im Fehlerlogbuch folgender:
08.08.2011 09:41:51 514 Fehler bei der Anmeldung für den Benutzer 'SORGE\ag'. System.Data.SqlClient.SqlException (0x80131904): Fehler bei der Anmeldung für den Benutzer 'SORGE\ag'.
bei System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
bei System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
bei System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
bei System.Data.SqlClient.SqlInternalConnectionTds.CompleteLogin(Boolean enlistOK)
bei System.Data.SqlClient.SqlInternalConnectionTds.AttemptOneLogin(ServerInfo serverInfo, String newPassword, Boolean ignoreSniOpenTimeout, TimeoutTimer timeout, SqlConnection owningObject)
bei System.Data.SqlClient.SqlInternalConnectionTds.LoginNoFailover(ServerInfo serverInfo, String newPassword, Boolean redirectedUserInstance, SqlConnection owningObject, SqlConnectionString connectionOptions, TimeoutTimer timeout)
bei System.Data.SqlClient.SqlInternalConnectionTds.OpenLoginEnlist(SqlConnection owningObject, TimeoutTimer timeout, SqlConnectionString connectionOptions, String newPassword, Boolean redirectedUserInstance)
bei System.Data.SqlClient.SqlInternalConnectionTds..ctor(DbConnectionPoolIdentity identity, SqlConnectionString connectionOptions, Object providerInfo, String newPassword, SqlConnection owningObject, Boolean redirectedUserInstance)
bei System.Data.SqlClient.SqlConnectionFactory.CreateConnection(DbConnectionOptions options, Object poolGroupProviderInfo, DbConnectionPool pool, DbConnection owningConnection)
bei System.Data.ProviderBase.DbConnectionFactory.CreatePooledConnection(DbConnection owningConnection, DbConnectionPool pool, DbConnectionOptions options)
bei System.Data.ProviderBase.DbConnectionPool.CreateObject(DbConnection owningObject)
bei System.Data.ProviderBase.DbConnectionPool.UserCreateRequest(DbConnection owningObject)
bei System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
bei System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
bei System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
bei System.Data.SqlClient.SqlConnection.Open()
bei WindowsApplication1.modDiverses.IsSQLServerOnline(String conn) in C:\Eigene Dokumente\Projects\MyProgram\modDiverses.vb:Zeile 566.
Beim 3. und 5. Aufruf so:
08.08.2011 09:42:19 014 Fehler bei der Anmeldung für den Benutzer 'SORGE\ag'. System.Data.SqlClient.SqlException (0x80131904): Fehler bei der Anmeldung für den Benutzer 'SORGE\ag'.
bei System.Data.ProviderBase.DbConnectionPool.GetConnection(DbConnection owningObject)
bei System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection)
bei System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory)
bei System.Data.SqlClient.SqlConnection.Open()
bei WindowsApplication1.modDiverses.IsSQLServerOnline(String conn) in C:\Eigene Dokumente\Projects\MyProgram\modDiverses.vb:Zeile 566.
------------
Alle Menschen sind klug. Die einen vorher, die anderen nachher. (Voltaire)
|