You need the access "application" object to extract things like code modules etc.
Just connecting with the database engine (which is separate from Access) will not get you use of the access object model.
So while VB6, FoxPro, c#, vb.net can use the database engine separate from the application object model, to pull things like forms, reports or code modules, you will need the access.application object model.
Access is a development tool. You can use Access to build applications that work with Oracle, or SQL server. So often, the data engine you use with Access will not be the built in one, but an external data system.
So to grab objects of the Access application (and not the data engine), then you need an installed copy of Access for this purpose.
This is really not different then say wanting to grab and work with the power-point object model. However, to be fair, all recent versions of office store “everything” as a zip file. I you rename a word file, excel file, power-point file as .zip extension, then you can simply open up that zip file and browse + see all of the xml, and even code.
However, Access is the only product that continues to store everything in a binary object model, and thus grabbing of those objects for all practical purposes requires the access application object to gain use of such objects.
So while most office files can be re-named as a zip file of which then you can browse and extract the xml files inside of that zip container, unfortunately Access is not a “zip” container like most other office files.