1

このコードは、VS 2010 および 2012 で完全に機能します。

Dim cmdText As String = "select * from master.dbo.sysdatabases where name=N'" & database & "'"
Dim bRet As Boolean = False
Using sqlConnection As SqlConnection = New SqlConnection(connString)
    Try
        sqlConnection.Open()
        Using sqlCmd As SqlCommand = New SqlCommand(cmdText, sqlConnection)
            Using reader As SqlDataReader = sqlCmd.ExecuteReader
                bRet = reader.FieldCount > 1
                reader.Close()
            End Using
        End Using
    Catch ex As SqlException
        MsgBox("Error Trying to Connect to database " & database & vbNewLine & ex.Message, MessageBoxButtons.OK, MessageBoxIcon.Error)
    Finally
        sqlConnection.Close()
    End Try
End Using

しかし、2013年に実行すると、これは sqlConnection.Open() コマンドで発生するエラーです: -

System.Transactions.dll で、タイプ 'System.ExecutionEngineException' の未処理の例外が発生しました

この例外のハンドラがあれば、プログラムは安全に続行できます。

http://connect.microsoft.com/VisualStudio/feedback/details/791339/fatalexecutionengineerrorを見つけて試してみまし
たが、役に立たなかっ
た ハマった。

4

0 に答える 0