Convert Your Access Database Into An Exe

Over the years, I’ve seen the same question come up time and time again:

How can I convert my MS Access database into an exe so I can sell it

Further discussion typically brings up the notion that they wish it to run as it’s stand alone program and not require the end-user to have MS Access installed (like other programs found on the Net).

Now, in a general sense, this is simply not possible.  If this was the original intent of your application, one should have used one of many alternative programming languages which allow for compiling into an exe.

That said, long, long ago, did come across a website in which instructions were provided to package everything up and indeed convert it into an exe.  Let me be perfectly clear, whether or not it worked back then, or continues to work today, it would be illegal as one does not have copyright to repackage the Access application in this manner.  This would be a clear violation of MS’ copyright!

So what can be done then?  No matter what database format you use mdb, mde, accdb, accde, accdr, … the end-user must have Microsoft Access (full version or runtime) installed to run it.  So while you cannot in fact convert your database itself into an exe, you can package it, as an exe, to perform the installation, but the final format, once installed, will remain an MS Access database file (mdb, mde, accdb, accdb, accde, accdr, … ).

If you are wanting to go down the route of creating an installer for your database, then take a look at MS Access Package Solution Wizard is Dead, Now What? as it lists a few installers you could look at.  By packaging the database, you will indeed create an exe that you can distribute/sell and it, in turn, can install the free Microsoft Access runtime (you should check to make sure they don’t already have the full version installed already before blindly installing the runtime), create the necessary folder structure(s), install other dependencies, perform registry operations (create a Trusted Location for the FE for instance) and lastly install your database.

Lastly, if you are at the point of looking to package your database application be sure to properly secure it prior to doing so.  To do so please read Securing Your MS Access Database Front-End.

 

19 responses on “Convert Your Access Database Into An Exe

  1. erwin leyes

    if Access of yesterday was able to compile the runtime into a single EXE like VFP or RBase then Access today is a different animal in DB front end development. AWA is not a practical solution for MSA developer who want to migrate to WEB, Sharepoint is the hindrance. I’m struggling to survive in ASP.NET VB.Net and now doing C Sharp because my son don’t like VB. I’m longing for MSA like web development but MORFIK is dead and fall short in today’s fluid web capability. I’m still hoping Access 2019 will make our dream come true. Thanks and more power ACCESS

    1. Daniel Pineault Post author

      I’m still hoping Access 2019 will make our dream come true

      Sorry to say, but I wouldn’t hold your breath! Microsoft doesn’t not seem to be able to come up with a real plan and execute it properly when it come to Access as a whole and even more so when it comes to Access and the World Wide Web.

      If the www is your audience, then switch technologies!

      1. Martin Loubser

        Hello Daniel,

        So, if Access 2019 is not going anywhere, what should I invest in?

        I am not an official developer, just an IT guy that enjoys automation and I am currently writing an Access solution for my home business that is growing and I definitely need an application to manage Clients and Transactions. I must say Access is pretty simple to create Parent / child and relationships between tables.

        I just signed up for Office 365, but from the previous guests (Erwin) comment, it seems SharePoint might not be a good idea?

        I started to look at Caspio, but wow that is going to be expensive.

        Any feedback will be appreciated.

        1. Daniel Pineault Post author

          Martin,

          Everything is a question of perspective and objectives. Access is still strong. Personally, I find it has become very unstable, to the point that I am no longer promoting nearly as much as I once did. If you can develop and distribute your databases with Access 2013 or earlier, then I’d say go for it, but otherwise I’d be looking at alternative. I myself have been doing a lot of work recently with proper web technologies (PHP, MySQL, HTML, CSS, JavaScript/jQuery, …). At the end of the day, everything depends on your objectives.

  2. Klaus Bergmann

    Am I missing something or why are you not mentioning the free Access Runtime from Microsoft?

    https://www.microsoft.com/en-US/download/details.aspx?id=50040

    The users do not need to buy Access. They simply install the free runtime and could work with any Access database. It is possible to write a script for Inno Setup that installs the Runtime and the database so that you are only distributing an exe.

    1. Daniel Pineault Post author

      I did mention the runtime version!

      can install the free Microsoft Access runtime

      I mention you have to install Access one way or another. What flavor of Access (full version, runtime, MSI, CTR, 32 bit, 64 bit, …) you install is entirely up to you.

  3. Philipp

    There are two advantages of an exe. First, it can be executed standalone. This cannot be achieved with Access. Second, the code is compiled and hence runs faster and the original source cannot be viewed in the compiled file. This can be achieved saving the Access database in the compiled .mde or .accde format.

  4. David Wolovick

    For almost 5 years I have been using Sagekey software to create an install package for my executable (accde) and an Access runtime. The last time I did a successful upgrade was December 2016. I did an upgrade a few months ago, created a new install package, and got a message “This database is in an unrecognized format”. I had a copy of the executable from last year and I was able to replace the latest executable with the old one. I have Office365 (Access 2016) on my development machine and apparently Microsoft upgraded me with a new version. I have tried packaging with 2013 and 2016 runtimes, but it still doesn’t work. There seems to be a problem with CTR and MSI capabilities. Are you familiar with this issue?

  5. cheekybuddha

    Hi Daniel,

    You may wish to edit this post:

    >> No matter what database format you use mdb, mde, accdb, accdb, accdb, … <> will remain an MS Access database file (mdb, made, accdb, accdb, accdb, … ). < accde
    accdb -> accdr
    made -> mde

    Even if it’s only for SEO!

    Keep up the fantastic work with your site,

    d

  6. Julia Anne B Mandeville

    Good evening – I came across this article when searching for ways to take a MS Access database and turn it into an application. I have limited and rusty programming skills (Spent 14 years doing Software QA, but for the last 9.75 years been a SAHM/Volunteer). I am creating a database for St. Gianna’s Place, a non-profit maternity home which just opened in Hudson, NH. All my work is a volunteer effort and is being developed on my personal laptop. What realistically are my options for having them run this as an application without having to open MS Access.
    Thank you
    Note: Website noted below is for St. Gianna’s Place

    1. Daniel Pineault Post author

      Sadly, you have none. There is no way to run an Access database without it opening and using Access. There are people that go to great lengths, using various APIs, to hide the Access UI and thus only displaying their forms/reports, but one way or another it is actually running in Access, the users need to have Access installed (no way around this).