Logo

My Access Tips for Custom Microsoft Access

Application Development

by Matthew V Carmichael


Need Help?

My Tips


Links

Resources

Check for updates and distribute
MS Access applications over the internet.

 

Distributing a new version of a multiple user Microsoft Access application can be challenging for many developers. For those of us who develop applications for different clients and remote offices, the distribution process can be an extremely tedious task. For that reason I have created a function that checks and distributes updated applications over the internet.

This sample application (Web Update Function) demonstrates how to distribute updated versions of a MS Access Front End to end users through the internet.

What is needed:

  • The application needs to be split (Data and Application)
  • A table in the FE about the current version
  • HTML files on a web server
    • VersionCheck.htm – contains the Unique Project # and current version #
    • download.html – contains download instructions and a link to the update
    • support.html – contains support information
  • WinZip Self Extractor Software to create the installation program
  • A web site to upload files/pages and for customers to download from.

The process

  1. The client’s network contains the split application (i.e. - myapp.mde and myData.mdb)
  2. I have the Master file, where I develop and make design changes (MasterApp.mdb)
  3. When I have completed my design changes I increase the Version # in the UsysProject table by .001.
  4. I then create a .mde (you don’t have to use a mde format – but I prefer to)
  5. Use WinZip and Zip the mde file.
  6. Use WinZip Self Extractor and create a self extraction exe file of the zip file.
  7. Upload the zip file to the web server.
  8. Change the version # of the VersionCheck.htm for that Project ID and upload it to the web server.

 

Details

1. Information about splitting a Microsoft Access database - click here

2. Development Environment - more information

3. UsysProject Table

In my Front End (FE) application I have created a table called UsysProject. NOTE: In order to view this table in the database window, make sure to check Hidden Objects AND System Objects from the View Tab from the Tools > Options window. This table contains information about the current FE and the paths of the html file for the Web Updater function.

Name

Description

ProjectID

Unique Project # for this application - Fixed 5 # format  I assign a unique # to each project I create

ProjectName

Name of Project / Application

ClientID

Unique Client ID - for Billing / Customer Service.  A reference # customers can use when calling or emailing.

Client

Client Name

Licenses

# of Licenses

LicenseExpires

Date the application will expire.  Leave blank if none.

Version

Version # X.XXX format

CheckUpdate

Flag to auto check for updates on daily start up (True = perform check, False = do not perform check)

CheckUpdateDate

Date of last check.  Use 1/1/2000 to run check every time the applications starts.  Enter any other date to check only once a day.

CheckUpdateURL

The URL of the file with the version information to check against.

UpdateURL

The URL of the new Front End build.

CheckUpdateText

Message for updated needed message box.

FormToOpen

Name of Main Form to open after the Splash Screen closes.

RedirectURL

URL of support / contact information for customers.

4. Information about MDE Files - click here

5. WinZip - compression utility for Windows

6. Use WinZip and Zip the mde file

7. Use WinZip Self Extractor and create a self extraction exe file. - click here

8, VersionCheck.htm - sample file

The Web Updater compares the version # of the current FE to the version # found on the html.  If the version # on the html file is higher, it prompts the user that an update is available.  This happens when the splash screen opens.

The format I use is a fixed width 13 character string.
P10000:1.000R

1 – The letter “P”
2-6:  My 5 digit unique project #
7 – a colon “:”
8-12 my X.XXX version #
13 – I use an “R” or “N” to require on not require the update.  A required update (R) means the user cannot use the application until the update is installed.  A not required update (N) allows the user to choose “No” to the update and continue working.

HTML Code of VersionCheck.htm
<html>
<head>
<title>Access Updater</title>
<Body>
P10000:1.000R<br>
P10001:1.013R<br>
P10002:2.004N<br>
</Body>
</html>