Ciao
ho scritto un'applicazione che si collega ad un database MySQL. Dal mio pc funziona tutto bene, ma se passo l'eseguibile su un altro, e lo faccio collegare al database presente sul mio pc (con dns), mi dā l'errore 3704: L'operazione non č consentita se l'oggetto č chiuso. Dato che non posso vedere a quale riga di codice si riferisce l'errore, ho supposto che si riferisse alla mia procedura di apertura connessione (o di chiusura). Ve le incollo:
Qualcuno sā come aiutarmi? Vi ringrazio!codice:Public Sub ApriConnessione(strQuery As String) On Error GoTo GestErr If gAdoConnessione.State = adStateOpen Then ChiudiConnessione End If 'Apre la connessione e la punta alla stringa gStrConnessione gStrConnessione = "DRIVER={MySQL ODBC 3.51 Driver};SERVER=" & Address & ";PORT=3306;DATABASE=" & Database & "; USER=" & User & ";PASSWORD=" & Password & ";OPTION=3;" gAdoConnessione.CursorLocation = adUseClient 'Controlla lo stato della connessione per eventuali errori If gAdoConnessione.State <> adStateOpen Then gAdoConnessione.Open gStrConnessione End If 'Riempie il RecordSet With recDati .CursorLocation = adUseClient .Open strQuery, gAdoConnessione, adOpenDynamic, adLockOptimistic .ActiveConnection = Nothing End With GestErr: If Err.Number > 0 Then MsgBox "Impossibile stabilire la connessione con il server " & Address & ". Alcuni parametri nel file ""settings.ini"" sono errati. Alla chiusura di questa finestra il programma verrā chiuso. Se, dopo il riavvio, il problema persiste, contattare l'amministratore." & vbCrLf & "Descrizione completa dell'errore:" & vbCrLf & Err.Description, vbCritical, "Errore di connessione" Err.Clear End End If End Sub Public Sub ChiudiConnessione() 'Controlla lo stato del RecordSet per eventuali errori If recDati.State = 1 Then recDati.Close 'Chiude il RecordSet End If 'Controlla lo stato della connessione per eventuali errori If gAdoConnessione.State = adStateOpen Then gAdoConnessione.Close 'Chiude la connessione ADO End If End Sub

Rispondi quotando
