Actually I am using the next code to compact Access 2003 databases (mdb files). in the past, I've used JRO.JetEngine (but is obsolete).
code:
Add Reference: Microsoft Office 12.0 Access Database Engine Object Library
Dim AccessEngine As New Microsoft.Office.Interop.Access.Dao.DBEngine
AccessEngine.CompactDatabase(File_Path, compact_file, Nothing, Nothing, ";pwd=mypass")
it seems runs fine: no exceptions, no errors, no advices, is created db compacted....But still, I'm not 100% sure because (googling) I have read on other sites that for access 2003 must be used JRO.JetEngine
my above code is correct to compact mdb files (access 2003)? is missing something?
I just tested your code in VB.NET 2010 and it seems to be working fine. It really did compact the Access 2003 database and the compacted database opened okay afterward. So, no, I don't think you're "missing something".