Annesly
Posts: 1
Joined: Fri Aug 02, 2019 5:07 am

Deploying Ms Access as an MSIX package

Mon Aug 05, 2019 11:16 pm

Hi All,

Hope all is well, I am new to the forum and this is my first topic.

I just want to know if I can use MSIX for my builds as it is my understanding that the intension is to move all 32bit app installations that use exe and msi to MSIX in the future. I currently can build my app which works with an exe/msi using Advanced Installer. The installer needs to performs the following actions:

1. Places the files\folders in a standard folder that the user has full access like the Documents folder. Usually two folders are created within the Documents Folder, one that holds the programs (i.e accde files) and one that holds the templates (i.e accdb which is the backend and Ms Word files which are templates)
2. Creates the shortcuts and also places them on the desktop and the start menu etc. I use two shortcuts one to execute the accde files and one to point to the templates that the software used and can open. The user can copy a template and create their own work by starting with a template.
3. Registry keys are added to the Ms office products so that the folders that contain the accde files are trusted by the access runtime and can run the VBA code without any interruptions.

I also digitally sign my installation packages so that it can be trusted and my installations is a per user installation, hence why I can use the Documents folder.

One thing to note for those not familiar with Ms Access is that data is written to both accde/accdb files by the user or the program (e.g the user might input some date and the program writes data through VBA or when a linked table is populated with the data from the backend when connected).

All my attempts to create an MSIX package to achieve this has failed thus far, hence my question to the community to see if this is even possible.

Therefore, can I achieve the above through an MSIX installer or am I out of luck and have to stick with EXE and MSI as the installer for my builds :?: ?

Kind regards
Annesly

Daniel
Posts: 8237
Joined: Mon Apr 02, 2012 1:11 pm
Contact:  Website

Re: Deploying Ms Access as an MSIX package

Wed Aug 14, 2019 9:31 am

Hello Annesly and welcome to our forums,

Considering your requirements these cannot be fulfilled without a redesign of your application code or without writing some custom code to create the app data files you need to be copied into the Documents folder that is visible to Microsoft Access application.

All the installation folders included into an MSIX package that correspond to system locations like Documents, Application Data, Program Files, etc are actually included into a special folder (VFS - Virtual File System) which is deployed under %ProgramFiles%\WindowsApps folder (this is the installation folder of all MSIX packages). Then at your application run-time only the file resources under your MSIX VFS folder are extracted and merged in a sandbox with the files, folders and registries available on the system and this sandbox resources are available and visible only for your application process. They are not visible/accessible by other application processes (e.g. Microsoft Access).

Also, here are my replies inline below:
1. Places the files\folders in a standard folder that the user has full access like the Documents folder. Usually two folders are created within the Documents Folder, one that holds the programs (i.e accde files) and one that holds the templates (i.e accdb which is the backend and Ms Word files which are templates)
This is possible only if you write your own application code to create those file in the Documents folder of current user at your application run-time. An MSIX package cannot write files outside of its application install folder (%ProgramFiles%\WindowsApps folder) at install time.
2. Creates the shortcuts and also places them on the desktop and the start menu etc. I use two shortcuts one to execute the accde files and one to point to the templates that the software used and can open. The user can copy a template and create their own work by starting with a template.
This is not possible either. The only shortcut an MSIX package could create is a tile under Start menu section.
3. Registry keys are added to the Ms office products so that the folders that contain the accde files are trusted by the access runtime and can run the VBA code without any interruptions.
This is not possible. All the registries an MSIX it includes are also deployed under the app install folder (%ProgramFiles%\WindowsApps folder) and the registry data is merged with the system registry data under the application sandbox only at app run-time and visible only for the app process context.

If you have any questions or doubts do not hesitate to write us back.

All the best,
Daniel
Daniel Radu - Advanced Installer Team
Follow us: Twitter - Facebook - YouTube

Return to “Building Installers”