Ist Datei wirklich eine Access-Datenbank

Wie kann ich festellen, ob eine „MDA“, „MDB“ oder „MDW“-Datei wirklich eine Access-Datenbank ist, oder ob sich etwas anderes dahinter versteckt?

Etwa so:

Private Type DBuf
 Dummy1 As String \* 4
 Test1 As String \* 15
 Dummy2 As String \* 1011
 Test2 As String \* 4
End Type

Function MDBVsn(Fn As string)
Dim I, Buf As DBuf, Ch As String \* 1
Open Fn For Random As #1 Len = Len(Buf)
Get #1, , Buf
Close #1
Debug.Print Buf.Test1, Buf.Test2
If Buf.Test1 = "Standard Jet DB" Then
 MDBVsn = 7
ElseIf Buf.Test2 = "Rich" Then
 MDBVsn = 2
End If
End Function

Wobei es mir noch nicht gelungen ist, zwischen Access95/97/2000 zu unterscheiden…

Reinhard

Danke! Ist das so richtig?

Rückgabewert 2 = Access 7.0

Ja, so ist’s (wobei ich über Access 1.0/1.1 nichts mehr sagen kann…)

Reinhard

Salü Tino

Schlag mal in der Access-Hilfe das Kommando „SYSCMD“ nach. Auch unter VB, wenn die Access - Library eingebunden ist…

Grüsse Peter ;-o

Schlag mal in der Access-Hilfe das
Kommando „SYSCMD“ nach.

acSysCmdAccessVer:
Gibt die Versionsnummer von Microsoft Access zurück

Ich brauche aber die AccessVersion einer gefundenen MDB-Datei.