Thanks Mike! That's a great start, but it doesn't seem to be very
comprehensive. Basically the algorithm seems to be:
If 1st byte = 01 then Access 2
ElseIf 21st byte = 00 then Access 97
ElseIf 21st byte = 01 then Access 2000/2002
Else Unknown
I ran it across a selection of old and new DBs I have lying around and found
that most V1 and V1.1 mdbs satisfy the V2 criteria, and there are also quite
a few "Unknown"s, most of which are V2. Most V1.x/V2 databases seem to be
all zeroes for the first block or so, except for the 01 in the first byte.
However, some have a lot of data in that block. I have a V2 mdb with &h77
in byte 1 and &hCF in byte 21!
Also, there's no distinction between 95/97 (as well as 2K/XP).
http://msdn.microsoft.com/downloads...s/027/001/683/msdncompositedoc.xml&frame=true if you're interested.