none
Needing more info about using Access runtime vs. ACCDE

    Question

  • (some of these questions have been partially answered. More below)

    I'm trying to understand Access Runtime, as compared to an ACCDE file.

    1. If I use Runtime, does it eliminate the need to hide the navigation pane, menus and ribbons?
    2. Does it create an executable file that can be used on any computer, regardless of whether Access is installed or not?
    3. Does Runtime need to be previously installed on the Users' computers?
    4. Is a Runtime file a smaller footprint than an ACCDE?
    5. Are there disadvantages to distributing a Runtime file instead of an ACCDE?

    The sources I've found so far on Runtime are a bit confusing. If anyone has a really good resource on this, I would much appreciate the address.

    Thanks!


    —nick


    Thursday, July 05, 2012 3:35 PM

Answers

  • Two different animals. The "Runtime" is a crippled version of Access that allows the user to run applications but not design them. The ACCDE file in an Access database file (which was originally an ACCDB) turned into a version that does not have source code, only compiled code. This makes it safer because users cannot steal your code.

    So you typically deploy both: the runtime and an ACCDE file. In A2010 you can use File > Save & Publish > Package Solution to do that.


    -Tom. Microsoft Access MVP

    • Marked as answer by Nick Vittum Monday, July 09, 2012 6:35 PM
    Thursday, July 05, 2012 3:53 PM
  • Just remember that design change can only be done in the original mdb/accdb, so you need to always keep it as you cannot do any development on the mde/accde!

    Runtime, doesn't create an executable file, nor does converting over to an mde/accde.  The runtime is in fact Access, just dumbed down.  The files remain the same, but runtime doesn't allow development.  Basically, if your users don't have MS Access, you install the runtime, unless they need to be able to do development, in which case they'll need to go buy the full blown retail version of Access.


    Daniel Pineault, 2010 Microsoft MVP
    http://www.cardaconsultants.com
    MS Access Tips and Code Samples: http://www.devhut.net

    • Marked as answer by Nick Vittum Monday, July 09, 2012 6:36 PM
    Thursday, July 05, 2012 4:07 PM
  • The Runtime version of Access lets users who don't have the full version of Access work with ordinary Access databases: .mdb, .mde, .accdb or .accde.

    YOU have the full version, so when you open a database you see what you always see. But... there is a way to make your Access act as if it's the runtime version.

    Press the Windows key + R to display the Run dialog.

    Drag your database from Windows Explorer onto the Open box in the dialog and drop it there.

    Click in the box and press End to go to the end of the text.

    Type a space, then /runtime

    Click OK or press Enter.

    You should now see your database as if it's opened in Access Runtime.


    Regards, Hans Vogelaar

    • Marked as answer by Nick Vittum Monday, July 09, 2012 6:36 PM
    Friday, July 06, 2012 12:14 PM
  • >So if, as Tom said in the beginning, I use Access "Save & Publish > Package Solution," I get an executable file.

    No, you do not. There is not special connection or even ANY difference or changes made to your Application. You simply copy your mdb, mde (that what is called an Access executable), or accdb, accde (that what is called a 2007-2010 Access executable).

    So your application is NOT changed, NOT modified. You just "copy" the access file to the target computer.

    >So I can then distribute that package to all my users, and not have to worry about whether or not they have Access, or what version they have. Is that also acurate?

    Well, not quite.  You are going to copy the plane Jane Access file (mdb, mde, accdb, accde) to that computer. The user MUST have a version of Access installed to run those files. So you have two choices:

    a) the user has the full edition of Access. Once installed they are free to copy an launch any access file and it will run

    b) the user has the "stripped down" version of Access called the Access runtime. Once installed they are free to copy an launch any access file and it will run

    So it not that they don't worry - they eithe use the free version of Access, or the paid verison (either way, this MUST be installed before your applcation will run). The package wizard can thus included this "free" edition if you want.

    So you are misunderstanding that there is some special connection between the runtime version of Access and your application.  So once the Access runtime is installed on that target computer then any Access application (mdb, mde etc.) can be simply copied to that computer and if you double click on that application then Access will launch.

    I explain in detail this concept here:
    http://www.kallal.ca/RunTime/Index.html

    So creating an Access executable refers to using the compile option, or what we term creating an mde (or now for 2007 onwards) an accDE. So an mde or an accDE is a compiled version of your application that has all of the source code removed. End users thus cannot modify this application. Remember, this option has NO relation to if a user has the runtime or not. About the only obvious issue would be that if you copy an mdb or accDB to a computer with the runtime, then the user will not have the design tools since they require you have the full edition of Access.

    So even the idea of creating an mde or accDE (an access executable) is not related to the runtime system. In ANY and in ALL cases when you deploy an mde or accde (access executable) you STILL requite the runtime to be installed or the full edition to be installed on that target computer. So no relationship exists here between the concepts of an executable.

    In all cases you are copying an Access file to the target computer. IN all cases you require that a version of Access is installed on that target computer for the application to run. So you have two choices. Either the user purchased and installs the full edition of access, or the user installs the free edition of Access (which is called the runtime edition).
     
    Albert D. Kallal (Access MVP)
    Edmonton, Alberta Canada

    • Marked as answer by Nick Vittum Monday, July 09, 2012 6:36 PM
    Monday, July 09, 2012 9:50 AM

All replies

  • Two different animals. The "Runtime" is a crippled version of Access that allows the user to run applications but not design them. The ACCDE file in an Access database file (which was originally an ACCDB) turned into a version that does not have source code, only compiled code. This makes it safer because users cannot steal your code.

    So you typically deploy both: the runtime and an ACCDE file. In A2010 you can use File > Save & Publish > Package Solution to do that.


    -Tom. Microsoft Access MVP

    • Marked as answer by Nick Vittum Monday, July 09, 2012 6:35 PM
    Thursday, July 05, 2012 3:53 PM
  • Just remember that design change can only be done in the original mdb/accdb, so you need to always keep it as you cannot do any development on the mde/accde!

    Runtime, doesn't create an executable file, nor does converting over to an mde/accde.  The runtime is in fact Access, just dumbed down.  The files remain the same, but runtime doesn't allow development.  Basically, if your users don't have MS Access, you install the runtime, unless they need to be able to do development, in which case they'll need to go buy the full blown retail version of Access.


    Daniel Pineault, 2010 Microsoft MVP
    http://www.cardaconsultants.com
    MS Access Tips and Code Samples: http://www.devhut.net

    • Marked as answer by Nick Vittum Monday, July 09, 2012 6:36 PM
    Thursday, July 05, 2012 4:07 PM
  • So. still not understanding the differences very well, I decided to actually create a Runtime exe, run the install, and see what it looks like. The result had no apparent differences from the ACCBD file I started from. All menus intact, nothing grayed out, everything appears to be operative. Even the VBE windo is available and usable.

    Clearly, I'm not comprehending the purpose of Runtime.

    1. Is the fact that everything appears fully enabled because I have Access on my computer?
    2. What are the parts of the system that are disabled?
    3. Do I need to start with an ACCDE, with all features I want unavailable to the user already hidden or disabled?
    4. When I ran a test as recommneded on http://msdn.microsoft.com/en-us/library/cc136539(v=office.12).aspx (using the ACCBD as a starting point) to see what the distributable file would look like, the Navigation Panel, menus, and shortcuts were all unavailable. Why was this not the case when I actually created a Runtime file?

    I will do more research and reading— but any light anyone else can shed on this for me would be much appreciated.


    —nick

    Thursday, July 05, 2012 5:51 PM
  • I have since discovered that the Runtime Setup simply moved a new copy of my ACCDB to a new folder. The reason it looked like the ACCDB is because it was an ACCDB. I have not yet learned what I did wrong and why it did not create a Runtime file.

    —nick


    Friday, July 06, 2012 11:50 AM
  • The Runtime version of Access lets users who don't have the full version of Access work with ordinary Access databases: .mdb, .mde, .accdb or .accde.

    YOU have the full version, so when you open a database you see what you always see. But... there is a way to make your Access act as if it's the runtime version.

    Press the Windows key + R to display the Run dialog.

    Drag your database from Windows Explorer onto the Open box in the dialog and drop it there.

    Click in the box and press End to go to the end of the text.

    Type a space, then /runtime

    Click OK or press Enter.

    You should now see your database as if it's opened in Access Runtime.


    Regards, Hans Vogelaar

    • Marked as answer by Nick Vittum Monday, July 09, 2012 6:36 PM
    Friday, July 06, 2012 12:14 PM
  • See:

    http://support.microsoft.com/kb/208730
    http://msdn.microsoft.com/en-us/library/aa165862(v=office.10).aspx

    Runtime is simply a free alternative to buying the retail version.  It is great for end-users since it limits their abilities to mess around with the database.  But you as a developer require the retail version.


    Daniel Pineault, 2010 Microsoft MVP
    http://www.cardaconsultants.com
    MS Access Tips and Code Samples: http://www.devhut.net

    Friday, July 06, 2012 12:30 PM
  • (Sorry—I had to attend a meeting this AM and just got back)

    Okay. . .  putting all these answers together with the reading and experimenting I've been doing, I think I understand what I didn't understand. Sometimes you need to know something just to know which questions to ask. . .

    So if, as Tom said in the beginning, I use Access "Save & Publish > Package Solution," I get an executable file. And if I've selected the right options in creating that file, then when I run it on my computer, all I will see is a copy of the database I started from, because I have Access on my system (unless I use a method such as the one Hans describes to force Access to run "as if" in Runtime). But if I run the same exec on a computer that doesn't have Access, then it will intall a copy of the ACCDR file.  Does that sound accurate?

    So I can then distribute that package to all my users, and not have to worry about whether or not they have Access, or what version they have. Is that also acurate?

    And I notice in the creation process, it says something about "preparing the files for a CD." But surely there's no problem with putting them on flash drives instead?

    Thanks!


    —nick

    Friday, July 06, 2012 6:08 PM
  • >So if, as Tom said in the beginning, I use Access "Save & Publish > Package Solution," I get an executable file.

    No, you do not. There is not special connection or even ANY difference or changes made to your Application. You simply copy your mdb, mde (that what is called an Access executable), or accdb, accde (that what is called a 2007-2010 Access executable).

    So your application is NOT changed, NOT modified. You just "copy" the access file to the target computer.

    >So I can then distribute that package to all my users, and not have to worry about whether or not they have Access, or what version they have. Is that also acurate?

    Well, not quite.  You are going to copy the plane Jane Access file (mdb, mde, accdb, accde) to that computer. The user MUST have a version of Access installed to run those files. So you have two choices:

    a) the user has the full edition of Access. Once installed they are free to copy an launch any access file and it will run

    b) the user has the "stripped down" version of Access called the Access runtime. Once installed they are free to copy an launch any access file and it will run

    So it not that they don't worry - they eithe use the free version of Access, or the paid verison (either way, this MUST be installed before your applcation will run). The package wizard can thus included this "free" edition if you want.

    So you are misunderstanding that there is some special connection between the runtime version of Access and your application.  So once the Access runtime is installed on that target computer then any Access application (mdb, mde etc.) can be simply copied to that computer and if you double click on that application then Access will launch.

    I explain in detail this concept here:
    http://www.kallal.ca/RunTime/Index.html

    So creating an Access executable refers to using the compile option, or what we term creating an mde (or now for 2007 onwards) an accDE. So an mde or an accDE is a compiled version of your application that has all of the source code removed. End users thus cannot modify this application. Remember, this option has NO relation to if a user has the runtime or not. About the only obvious issue would be that if you copy an mdb or accDB to a computer with the runtime, then the user will not have the design tools since they require you have the full edition of Access.

    So even the idea of creating an mde or accDE (an access executable) is not related to the runtime system. In ANY and in ALL cases when you deploy an mde or accde (access executable) you STILL requite the runtime to be installed or the full edition to be installed on that target computer. So no relationship exists here between the concepts of an executable.

    In all cases you are copying an Access file to the target computer. IN all cases you require that a version of Access is installed on that target computer for the application to run. So you have two choices. Either the user purchased and installs the full edition of access, or the user installs the free edition of Access (which is called the runtime edition).
     
    Albert D. Kallal (Access MVP)
    Edmonton, Alberta Canada

    • Marked as answer by Nick Vittum Monday, July 09, 2012 6:36 PM
    Monday, July 09, 2012 9:50 AM
  • Hi Albert

    (I wrote the message below when I first read your post. Later today I had time to read your article. I think I understand the overall idea better now. It still seems to me like the "Package Solution" might be a good idea for distibuting to users with very low level of computer savvy (which I am definitely dealing with here). Does that make sense to you?)

    Now I'm really confused. Friday I ran the Package Solution Wizard (in Access 2010) on a test file simulating what will ultimately be the front end. Under "pre-installation requirements" it asks if I want to (1) Require Access 2010 be installed; (2) Require Access 2010 Runtime be downloaded if Access is not already installed; or (3) Require nothing and install Access 2010 Runtime.

    I chose the third option. The result (after about a dozen other steps) was a package of files including a setup.exe. When I ran this setup on my computer, it loaded a new copy of the .ACCDB I had started with. But when I ran it on my wife's computer (which doesn't have Access installed) it intalled a copy of Runtime with the .ACCBDR file.

    All this sounds contrary to what you're telling me, if I understand you correctly. Is the difference in versions, or am I misunderstanding something?


    —nick


    Monday, July 09, 2012 1:33 PM