Solved

How to get version of MDB from VB

Posted on 1998-10-22
14
497 Views
Last Modified: 2006-11-17
How to get version of Access for an MDB file using VB code?
0
Comment
Question by:dvsraju
  • 5
  • 4
  • 3
  • +2
14 Comments
 
LVL 5

Expert Comment

by:kulikuli
ID: 1966341
Before being able to read the version you should append a property to the database object using the CreateProperty method.
Then set its value to the version you want to.
Then you are able to retreive the version from VB by reading the property's value.
0
 
LVL 5

Expert Comment

by:kulikuli
ID: 1966342
You can enumerate the properties by looping through the database's Properties collection

On creating properties:
There are a couple of examples to be found in the Help-file at the following topics:
CreateProperty
AllowByPassKey
0
 
LVL 8

Expert Comment

by:Helicopter
ID: 1966343
Or you can try this:

Print SysCmd(7)
0
 
LVL 5

Expert Comment

by:kulikuli
ID: 1966344
Helicopter, does this also work from VB?
0
 

Author Comment

by:dvsraju
ID: 1966345
I am looking for an answer on how to get the version from an already existing MDB. I just need to know the version of Access for an existing MDB using VB code.
0
 

Author Comment

by:dvsraju
ID: 1966346
I need to find the Access version for an existing MDB through VB code.
0
 
LVL 8

Expert Comment

by:Helicopter
ID: 1966347
It's still ambiguous. Do you want to be running a database app and report on the version of access that the db is using? (in which case my answer will do the job)

or do you want to (e.g.) list all the mdb files on your drive and have some external application which reports the version for each of them? In which case I think you are going to need a registry search.
0
6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

 

Author Comment

by:dvsraju
ID: 1966348
I need to find the version of several MDB's on a particular drive, but those MDB's may not have been created on that system. So I do not expect the registry search to be of any help for the files that are not created by the system.
0
 
LVL 5

Accepted Solution

by:
kulikuli earned 200 total points
ID: 1966349
try:
set db=currentdb()
msgbox db.properties("AccessVersion")
0
 

Author Comment

by:dvsraju
ID: 1966350
If there are no properties for the MDB file, then this option does not work. Even for those MDB's that have properties, we are getting something like 6.74 or 7.53 for version Access 95 and Access 97 respectively where as I expect to get version 7.0 or 8.0 respectively.
0
 
LVL 5

Expert Comment

by:kulikuli
ID: 1966351
All the MDB's have from version 7.0 and 8.0 HAVE this property. I don't know about version 2.0 but I assume it will be allright(couldn't test it, because I haven't installed it). You are right about the values that differ from the exact version number. But they still are in line with the exact version number. You have to consider that lower than 7.0 it will be MS Access 7.0 and higher than 7.0 it will be 8.0. You should check 2.0 , but I am quite sure it will be lower than 2.0 if the property exists.

Best regards,

kulikuli
0
 
LVL 9

Expert Comment

by:perove
ID: 1966352
Use this instead

Eval(SysCmd(SYSCMD_ACCESSVER))

this give you 7,or ( or whatever)

0
 
LVL 8

Expert Comment

by:Helicopter
ID: 1966353
I already tried that one Perove...(s)he wants the version number of all mdbs on the hard drive without opening them
0
 
LVL 2

Expert Comment

by:lightcross
ID: 11020224
try this site.  its awesome.  you have two options.

1. list all the mdb files on any or all drives connected to your pc (including network drives)

2. a program that allows you to rightclick file and detect version.  it will also allow you to double-click and it will detect and open the correct version of access for that particular file.


http://www.aylott.com.au/accver.htm
0

Featured Post

Do You Know the 4 Main Threat Actor Types?

Do you know the main threat actor types? Most attackers fall into one of four categories, each with their own favored tactics, techniques, and procedures.

Join & Write a Comment

Suggested Solutions

The first two articles in this short series — Using a Criteria Form to Filter Records (http://www.experts-exchange.com/A_6069.html) and Building a Custom Filter (http://www.experts-exchange.com/A_6070.html) — discuss in some detail how a form can be…
When you are entering numbers in a speadsheet, and don't remember what 6×7 is, you just type “=6*7" instead. It works in every cell! This is not so in Access. To enter the elusive 42 in a text box, you have to find a calculator, and then copy the re…
Learn how to number pages in an Access report over each group. Activate two pass printing by referencing the pages property: Add code to the Page Footers OnFormat event to capture the pages as there occur for each group. Use the pages property to …
In Microsoft Access, learn different ways of passing a string value within a string argument. Also learn what a “Type Mis-match” error is about.

706 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now