Newsgroup: it.comp.lang.visual-basic
Titolo: Version Information per database Ms Access

Ciao a tutti.
Esiste un modo per determinare da codice la versione completa di un
database Ms Access (ossia quella visibile da menu-->?, tipo Ms Access
2000 10.xxx.xxxx SP3).

 2000 10.xxx.xxxx SP3).
Non proprio come la vorresti tu...!
A mio avviso hai 2 strade:
1) Apri via automazione Access in particolare un'oggetto Application sul
quale puoi ottenere:
    Application.Version
    Application.Build
2) Apri il tuo Database con DAO e lo interroghi...
Public Function ShowAccVer()
    Dim DB As DAO.Database
    Const conPropNotFoundError = 3270
    Set DB = OpenDatabase(filename)
    On Error GoTo ShowAccVer_Err
    PVer = DB.Properties.("AccessVersion").Value
    DB.Close
    Set DB = Nothing
    Select Case Val(Left(PVer, 2))
        Case 6
            rdAccVer = "Database version is Access 95"
        Case 7
            rdAccVer = "Database version is Access 97"
        Case 8
            rdAccVer = "Database version is Access 2000"
        Case 9
            rdAccVer = "Database version is Access 2002"
        Case 10
            .....
        Case 11
            .....
    End Select
ShowAccVer_Err:
    If Err = conPropNotFoundError Then
        PVer = DB.Properties.("Version")
        rdAccVer = "Application Version information can not be found.  " &
vbCrLf & vbCrLf & _
        "But the file's JET Engine Version is " & PVer
    End If
Response = MsgBox("for " & filename & vbCrLf & vbCrLf & rdAccVer, vbOKOnly,
" DataBase Version Information")
End Function
Ciao
-- 
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.alessandrobaraldi.it
---------------------------------------------------------------------------

 ---------------------------------------------------------------------------
Ciao Alessandro, grazie per il post.
In effetti, le informazioni che mi dai, le posso ottenere direttamente
via API da access.exe.
Il mio problema è che non risco a capire come sia possibile
determinare quale service pack sia applicato al database (un modo ci
deve essere visto che
da programma Access, utilizzando il menu-->? è visibile la versione
completa del database).
Penso che esista un qualche metodo tipo la storep procedure @@version
di Sql Server, ma finora non sono riuscito a trovarne documentazione.
Tu mi puoi aiutare?
Ciao e grazie.

Ciao Alessandro, grazie per il post.
In effetti, le informazioni che mi dai, le posso ottenere direttamente
via API da access.exe.
Il mio problema è che non risco a capire come sia possibile
determinare quale service pack sia applicato al database (un modo ci
deve essere visto che
da programma Access, utilizzando il menu-->? è visibile la versione
completa del database).
Penso che esista un qualche metodo tipo la storep procedure @@version
di Sql Server, ma finora non sono riuscito a trovarne documentazione.
Tu mi puoi aiutare?
Ciao e grazie.
Purtroppo credo ci sia un pò di confusione... non confondere Access e
JET...!
Una qualsivoglia SP(premesso che Access non le supporta ma ci sono le
tabelle di sistema) sarebbe in ogni caso
rivolta al motore JET e credo che si parli di JET4 già dalla versione A2000
pertanto potresti al massimo ottenere
quel tipo di INFO...
Cosa ben diversa invece è la richiesta che fai che non ha nulla a che fare
con JET ma riguarda solo la parte HMI o Client
di JET.
Sicuramente se hai avuto modo di esplorare Access.Exe è sperabile sia
reperibile in qualche modo ma non ho trovato nulla
nello UseNet per poterti aiutare.
