Newsgroup: it.comp.lang.visual-basic
Titolo: ADO MDB e password

salve, sto incontrando qualche problemino con le password dei database
Access.
io finora quando creavo la stringa di connessione mettevo solo due
proprietą:
Provider (MS Jet 4.0)
DataSource (file MDB)
ora, se voglio aprire un file MDB protetto da password, come devo fare?
se scrivo solo Password:=Prova non funziona... che devo aggiungere?
ah, un'altra cosa: nel momento in cui una connessione č aperta, senza
password, come č possibile impostarne una?
grazie
MarioH

 DataSource (file MDB)
User ID=Pluto
Password=pippo
ciao
ugo


ma lo user id me lo posso inventare io, ovviamente, vero?
e per quanto riguarda l'impostazione di una password quando la connessione è
già stabilita ?? io non so manco da dove cominciare... con Excel era tutto
cosi facile... ::))))))
MarioH

 ha scritto nel messaggio
news:%FxK6.760$Rc5....@news2.tin.it...
| salve, sto incontrando qualche problemino con le password dei database
| Access.
| io finora quando creavo la stringa di connessione mettevo solo due
| proprietà:
| Provider (MS Jet 4.0)
| DataSource (file MDB)
|
| ora, se voglio aprire un file MDB protetto da password, come devo fare?
| se scrivo solo Password:=Prova non funziona... che devo aggiungere?
Option Explicit
Public ADOConnectionString As String
Private connConnection As ADODB.Connection
Private strProvider As String
Private strDataSource As String
Private strDataBasePath As String
Private strDataBaseName As String
Private strPersistSecurityInfo As String
Private strDataBasePassword As String
Private strConnect As String
sub DBConnection
  strProvider = "Provider=Microsoft.Jet.OLEDB.4.0;"
  strDataBasePath = App.Path
  strDataBaseName = "\db1.mdb"
  strDataSource = "Data Source='" & strDataBasePath & strDataBaseName & "';"
  strPersistSecurityInfo = "Persist Security Info=False;"
  strDataBasePassword = "Jet OLEDB:Database Password=" & _
    DBGuessDataBasePassword(strDataBasePath & strDataBaseName)
  ADOConnectionString = strProvider & strDataSource & _
    strPersistSecurityInfo & strDataBasePassword
  'The connection strings are now made.
  Set connConnection = New ADODB.Connection
end sub
Function DBGuessDataBasePassword(ByVal DBname As String) As String
  Dim n As Long, s1 As String * 1, s2 As String * 1
  Dim lsClave As String
  Dim mask As String
  mask = Chr(78) & Chr(134) & Chr(251) & Chr(236) & _
         Chr(55) & Chr(93) & Chr(68) & Chr(156) & _
         Chr(250) & Chr(198) & Chr(94) & Chr(40) & Chr(230) & Chr(19)
  Open DBname For Binary As #1
  Seek #1, &H42
  For n = 1 To 14
     s1 = Mid(mask, n, 1)
     s2 = Input(1, 1)
     If (Asc(s1) Xor Asc(s2)) <> 0 Then
        lsClave = lsClave & Chr(Asc(s1) Xor Asc(s2))
     End If
  Next
  Close 1
  DBGuessDataBasePassword = lsClave
End Function
| ah, un'altra cosa: nel momento in cui una connessione è aperta, senza
| password, come è possibile impostarne una?
Non sono sicuro sia possibile aprire la connessione senza aver specificato la password (se
prevista).


santo cielo!! ho dato un'occhiata a questa funzione, piu oltre... ma mica ho
capito che cavolo fa...
perche apre il file come binario?? non è perciolos?? e che cosa ci sta al
punto &H42 ??????? quale sarà il terribile mistero che si nasconde dietro
l'offset &H42 ?? TA-DAH !! fine della prima puntata... consigli per gli
acquisti, la soluzione del giallo nella seconda puntata, dove Sherlocco
l'investigatore sciocco scoprirà che dietro l'indirizzo &H42 c'è l'indizio
per fare luce su un tremendo delitto.. .::)))))))))))
lo so, sono patetico, è che ironizzo per non disperarmi... ::)))))))
MarioH (il comico mancato...)

 ha scritto
|
| >   strPersistSecurityInfo = "Persist Security Info=False;"
|
| cosa sarebbe questo persist ecc. ? e se lo imposto a True che cosa mi
| succede?
Ehm, ammetto la mia ignoranza in materia. Pero' non e' che me la sia inventata: ho
semplicemente aggiunto un controllo ADODC ad un form, ed ho fatto generare a lui la
stringa di connessione. Tra le varie proprietà, c'era pure questa security info: e chi
sono io per toglierla?
| >   strDataBasePassword = "Jet OLEDB:Database Password=" & _
| >     DBGuessDataBasePassword(strDataBasePath & strDataBaseName)
| >
|
| santo cielo!! ho dato un'occhiata a questa funzione, piu oltre... ma mica ho
| capito che cavolo fa...
Esattamente nemmeno io...
| perche apre il file come binario?? non è perciolos?? e che cosa ci sta al
Se il file venisse aperto in scrittura forse ci potrebbero essere dei problemi... :)
| punto &H42 ??????? quale sarà il terribile mistero che si nasconde dietro
| l'offset &H42 ?? TA-DAH !! fine della prima puntata... consigli per gli
Cosa c'e' all'offset &H42? Ssssssssshh, muto sognno!


Vogliamo dire che va a leggersi la Password del database?
Bye
ugo


stai scherzando o fai sul serio??
se uno la puo leggere cosi impunemente, che razza di password č ??
MarioH

 ha scritto nel messaggio
news:xjOK6.3153$Rc5....@news2.tin.it...
