How to distribute 2016 Ms Access App in autoinstalling package (1 Viewer)

matteo.snidero

New member
Local time
Today, 08:41
Joined
Jul 10, 2017
Messages
4
Hi all,

I need to distribute 2016 Ms Access App like a on the shelf application: the customer download the autoinstalling package, then double click on it and then follows the wizard's instructions until the final installation.
The package (or the packages) should include the right access runtime for the target os and also check if it's already installed some version of access on the target computer.

How can I do this?

Thank you for any suggestion.

Matteo
 

isladogs

MVP / VIP
Local time
Today, 16:41
Joined
Jan 14, 2017
Messages
18,227
Suggest you purchase installer software.
I use SamLogic Visual Installer and its very good but there are others available.

I would also recommend you purchase a code signing certificate otherwise your distributed applications will be from an untrusted source and create a poor first impression.
 
Last edited:

Pat Hartman

Super Moderator
Staff member
Local time
Today, 11:41
Joined
Feb 19, 2002
Messages
43,275
SageKey is customized for Access apps so it handles things the others might not.
 

isladogs

MVP / VIP
Local time
Today, 16:41
Joined
Jan 14, 2017
Messages
18,227
I've just done a quick comparison of the 3 packages suggested for my own interest:

SamLogic Visual Installer comes in 2 versions (Standard & Pro) as does SageKey (Lite & Pro)

Buying the basic version of either seems like a false economy looking at the feature sets of each.

Sam Logic Visual Installer Pro and Sage Key Pro have very similar feature sets.
I believe Sage Key uses a visual approach i.e. wizards as does Sam Logic though both allow users to use scripts when building a solution

However prices are very different:
SamLogic VI Pro = $149 ; Sage Key Pro =$650

SamLogic has a trial version available - not sure if SageKey does

By comparison, Inno is completely free.
Installation packages are built entirely by scripts - no visual element

It boils down to whatever you can afford and/or feel most comfortable with
 

matteo.snidero

New member
Local time
Today, 08:41
Joined
Jul 10, 2017
Messages
4
I've tried 2 others:

- SSE Setup
- Advanced Installer

The first include the feature to preinstall ms access runtime, while the second need a payment version that varies from 399 to 2.999 dollars.

I've just done a quick comparison of the 3 packages suggested for my own interest:

SamLogic Visual Installer comes in 2 versions (Standard & Pro) as does SageKey (Lite & Pro)

Buying the basic version of either seems like a false economy looking at the feature sets of each.

Sam Logic Visual Installer Pro and Sage Key Pro have very similar feature sets.
I believe Sage Key uses a visual approach i.e. wizards as does Sam Logic though both allow users to use scripts when building a solution

However prices are very different:
SamLogic VI Pro = $149 ; Sage Key Pro =$650

SamLogic has a trial version available - not sure if SageKey does

By comparison, Inno is completely free.
Installation packages are built entirely by scripts - no visual element

It boils down to whatever you can afford and/or feel most comfortable with
 

matteo.snidero

New member
Local time
Today, 08:41
Joined
Jul 10, 2017
Messages
4
Suggest you purchase installer software.
I use SamLogic Visual Installer and its very good but there are others available.

I would also recommend you purchase a code signing certificate otherwise your distributed applications will be from an untrusted source and create a poor first impression.

Where can I find some tutorial explaining how works certificate purchasing and management?

And, I splitted the Ms Access file in front end and back end. Is there any way to convert the front end in an executable file (.exe file not .accde) and the back end in another file type? If it's not possible how can I protect the BE from unauthorized access to datas?

Thank you!
 

isladogs

MVP / VIP
Local time
Today, 16:41
Joined
Jan 14, 2017
Messages
18,227
Where can I find some tutorial explaining how works certificate purchasing and management?

And, I splitted the Ms Access file in front end and back end. Is there any way to convert the front end in an executable file (.exe file not .accde) and the back end in another file type? If it's not possible how can I protect the BE from unauthorized access to datas?

Thank you!

A Google search will give you more info on code signing.
However there is an article about this on the SamLogic website.

The install file or files can contain a variety of different items which will be bundled together as an exe file.
For example my FE install will include Access accde or accdb, text files, word and excel templates ETC.
The BE install is usually a SQL Server file
In addition, I have a third file with common components shared by all users such as PDF files and image files

HTH
 

CJ_London

Super Moderator
Staff member
Local time
Today, 16:41
Joined
Feb 19, 2013
Messages
16,614
Is there any way to convert the front end in an executable file
No. An installer will create a .exe, but when run it unpacks your files, whether they be .accde or .accdb and they will need a suitable runtime or full version of access.

back end in another file type?
like what? You can change the file extension to something else, it will still open with access (and users can run routines to find it based on file type rather than file extension)

If it's not possible how can I protect the BE from unauthorized access to datas?
encrypt it with a password before you distribute it. Don't use linked tables in the front end and hide the password in your vba code in hashed form - anyone can open a .accde in a text editor like notepad and can see all text as text. But all that can be overcome by someone who is determined enough. SQL Server/Express provides a much higher level of security for your data - subject to your front end not allowing any more than the necessary access for users to do their work.

If you want security, you have to decide What you want to protect, from Whom, doing What and Why. And then develop the appropriate strategies (plural) which will often impact on how you design the functionality of the front end.

For example, have you considered protecting against sql injection? Can users run queries/reports to display the entire customer list and contacts which they can then simply copy/paste into excel. Do you need to log user actions and run algorithms to detect suspicious behaviour? Can users delete records accidentally? etc.

Depending on the strategies for the 4 'W's, it may be access is not the right thing to use.
 

Pat Hartman

Super Moderator
Staff member
Local time
Today, 11:41
Joined
Feb 19, 2002
Messages
43,275
I've used SageKey and although I was happy with the results, I resent having to purchase a new version for each new version of Access.
 

isladogs

MVP / VIP
Local time
Today, 16:41
Joined
Jan 14, 2017
Messages
18,227
I've used SageKey and although I was happy with the results, I resent having to purchase a new version for each new version of Access.

Interesting. That's not necessary with Samlogic visual installer.
So, for example, Samlogic VI 2014 was released before Win 10 & so the blurb only mentions support up to Windows 8
However it works perfectly in Win 10

The latest version, VI 2017, adds direct support for Win 10 and new functionality e.g. additional scripting commands.
The main reason I stick with that product is that they do respond to suggestions for new features
Several requests for new features that I have made are now included in the software.
 
Last edited:

Pat Hartman

Super Moderator
Staff member
Local time
Today, 11:41
Joined
Feb 19, 2002
Messages
43,275
I'm about to try to use SamLogic. so far I haven't made a lot of prograss. It would have been helpful to have an Access specific example.
 

isladogs

MVP / VIP
Local time
Today, 16:41
Joined
Jan 14, 2017
Messages
18,227
Samlogic VI is not Access specific but it is very intuitive to use in my view.

I would upload an example of a self extracting .exe file created using VI, but the forum won't accept .exe files.

However there are a lot of examples on my website, some more complex than others
For examples, there are 3 old freeware utilities packaged as .exe files here:
http://www.mendipdatasystems.co.uk/free-software/
 

Pat Hartman

Super Moderator
Staff member
Local time
Today, 11:41
Joined
Feb 19, 2002
Messages
43,275
Thanks Colin but it is the generated script that would be most helpful. Does SamLogic generate MSI scripts?
 

isladogs

MVP / VIP
Local time
Today, 16:41
Joined
Jan 14, 2017
Messages
18,227
The pro version can produce MSI files as part of the scripting commands feature but as I've never done this, I can't provide an example.

I do however, use many other script commands (only in Pro version)
In my view it's a false economy to get the standard version

I just create self extracting exe files as I mostly distribute via my website.
Occasionally, if requested by customers I'll do a version for CD / USB stick

For a brief outline of MSI installation using VI, see this online blog page:
http://www.samlogic.net/visual-installer/tips/tips-pages/run-msi-installation-from-script/run-msi-installation-from-script.htm.

Lots of other brief guides online as well

If you haven't already done so, I would suggest downloading a trial version.
There are inevitably some restrictions but its still usable
 

Gasman

Enthusiastic Amateur
Local time
Today, 16:41
Joined
Sep 21, 2011
Messages
14,306
I would upload an example of a self extracting .exe file created using VI, but the forum won't accept .exe files.

Just rename the extension and advise in the post?
I do it all the time for files that Outlook will block.?

Would that work, or does the site 'look inside the file'?
 

isladogs

MVP / VIP
Local time
Today, 16:41
Joined
Jan 14, 2017
Messages
18,227
I tried just zipping the file but it causes problems.
Can't just rename - its too big for anything except zipping
As already mentioned, there are many links to examples on my website.
In fact you've used at least one such link yourself ....

However, attached is an example EXE file with an added .ZIP suffix so I could upload it
Do NOT open/run the zip file as it will just extract the various components of the EXE file
Instead REMOVE the .zip suffix, then double click the EXE file to run it as a self extracting installation file.

The app itself is nothing special - it's the countdown timer with optional alarm sounds I uploaded to sample databases several months ago
 

Attachments

  • CountdownTimer.exe.zip
    1.3 MB · Views: 487
Last edited:

HTPink

New member
Local time
Today, 16:41
Joined
Apr 2, 2020
Messages
1
encrypt it with a password before you distribute it. Don't use linked tables in the front end and hide the password in your vba code in hashed form - anyone can open a .accde in a text editor like notepad and can see all text as text. B

Hi CJ_London

Just doing some research and don't understand this line - if you've split the database how can you get to the data in the back end without linking to the tables from the front end?

Sorry if being dumb!
 

theDBguy

I’m here to help
Staff member
Local time
Today, 08:41
Joined
Oct 29, 2018
Messages
21,473
Hi CJ_London

Just doing some research and don't understand this line - if you've split the database how can you get to the data in the back end without linking to the tables from the front end?

Sorry if being dumb!
Hi. Welcome to AWF! Colin (isladogs) has a sample database here demonstrating how to do this. You basically grab the data you want through VBA, without creating a linked table.
 

CJ_London

Super Moderator
Staff member
Local time
Today, 16:41
Joined
Feb 19, 2013
Messages
16,614
a number of ways

you will need code to run on first use to ask the user to select a directory for the back end - then place the backend there and use vba to either create the linked tables, or store the location in a local table or db property to be used in a query e.g.

SELECT * FROM tblCustomers IN 'F:\datapath\BEtable.accdb'

or create a global db entity in vba for the backend and use recordsets

set me.recordset=db.openrecordset "SELECT * FROM tblCustomers"
 

Users who are viewing this thread

Top Bottom