Va bene.

Prima di richiamare la transazione eseguo un paio di query che estraggono dati (una semplice login).

Funziona tutto.

codice:
 
strq="select bla bla bla"
If DbConnection.Estrai(StrQ, LocDset, "utenti", True) Then
    If LocDset.Tables("utenti").Rows.Count = 0 Then
        bla
        bla
        bla 'niente a che fare con la classe
    end if
end if

DbConnection.BeginTrans()
StrQ = "update bla bla bla"
If Not DbConnection.EseguiSQL(StrQ) Then
    MsgBox("Errore: " & DbConnection.MsgErrore, MsgBoxStyle.Critical, "Accesso")
    DbConnection.RollBackTrans()
    Return
End If
Il messaggio che mi restituisce è proprio quello del primo post.....