HOME

Back to Manual Table of Contents

Update

From the Main Menu, select Help | Update.

Enter your registration number. You will need a new registrationn number for each version. For instance, one registration number will work for any build of version 3.4, but you will need a different number for version 3.5. Click Check for Updates to see if an update is available for download. If so, click Download to download and install the new update. You can do this from any computer and it will save the update in \\SERVER\OpenDentalData\, your A-Z folders, as Setup.exe. Once you install and run the update, all other computers will be required to update when they first open the program. They won't have to download again, but will automatically use the Setup.exe that was already saved on your network folder. This allows you to easily keep all your computers updated.

Troubleshooting

When the Setup program runs, you would usually expect the first screen to notify you that it was upgrading (from 3.4.18.0 to 3.4.19.0, for instance). If instead, the first screen gives you three options of Modify, Repair, and Uninstall, then you should just click cancel and try to download again, because it's just trying to reinstall the version that you already have installed. You will run into issues like this if you are taking a copy of your database home. When you run it on your home computer, it will try to update the program, but it won't have access to the most recent download. Also, if you switch databases from the Choose Database window, it might not be able to locate the Setup.exe, depending on how you have your Data Paths setup. If you don't have a high-speed internet connection at home, you could copy Setup.exe from your OpenDentalData folder onto a flashdrive to take it home with you and run it manually.

Technical Details

Regular customers of ours do not need to read this section. It is intended for other distributors of DentOffice who might wish to also provide the update service to their customers. So here's how it works:

1. The customer or potential customer installs the trial version from our website. This includes the .NET framework, the MySQL server, the database, etc. At this point, the customer has a fully functional version of the program except that OpenDental.exe will not allow more than 30 patients.

2. When they purchase the software, we provide a registration number to the customer which they enter in the box as shown at the top of this page. The registration number is different for each minor version and starts with the version number. For instance, the registration number for version 3.1 might look like 31s04lv83n while the registration number for version 3.4 might look like 34do0m48cj. These are only examples, however, since we do not publish registration numbers.

3. There is a folder on our website called http://www.open-dent.com/updates/. This path is stored in the preferences table in the database under "UpdateWebsitePath". Within the updates folder are a series of folders, one for each minor version of DentOffice. The name of each folder is identical to the registration numbers we give out. For instance, there might be a folder called http://www.open-dent.com/updates/34do0m48cj. The contents of each folder is always the same. They contains two files: Manifest.txt, and Setup.exe.

4. Manifest.txt : Describes which versions are available. There are two lines. Line one contains the most recent build available. The second line is optional and might contain a newer minor release that is available. For instance, if we are in the version 3.4 folder and manifest, then it might look like this:
3.4.12
3.7
This allows the user to keep version 3.4 as current as possible even if they do not wish to update to version 3.7. If they want to update to version 3.7, they have to call us to get a new registration number. If one of the available versions is beta, then we tack a 'b' onto the version. For instance, 3.4.12b. This will help the user decide whether they want to update now or wait for a release version.

5. Setup.exe : Only installs the OpenDental.exe, necessary dll's, and ConversionFiles as described in the programmers page. Setup.exe does not install any database or server components.

6. When user clicks Check for Updates, DentOffice compares the currently installed version with the versions in the manifest. If newer versions are available, it notifies the user.

7. User clicks the download button. This causes Setup.exe to be copied to the OpenDentalData folder located on the server. As soon as it is copied, Setup.exe is automatically launched, and DentOffice shuts down. The user then completes the installation process and manually restarts DentOffice. There is a new field in the preferences table called "ProgramVersion" that is then updated with the most recent version installed. Note that this might be a slightly newer version than the "DataBaseVersion".

8. At this point, if someone on another workstation starts DentOffice, one of the first things it does is compare the "ProgramVersion" in the preference table with the version installed on that workstation. If the ProgramVersion is newer, it lets the user launch Setup.exe directly from the OpenDentalData folder without downloading anything from the website.

If you want to provide the update feature to your own customers, you can duplicate the functionality above. Change the "UpdateWebsitePath" in the preference table to your own website. Supply your own 10 character registration numbers to your customers and provide Manifest.txt and Setup.txt in the appropriate folders on your website. You will have total control over when versions are released and who has access to them. This can all be done with simple files rather than relying on a complex web service. By letting users perform the updates themselves, it should cut down on phone calls, mailing costs, and emails.

We have no immediate plans to enhance the update feature beyond what is described above unless we can figure out how to use a single registration number for each customer without making them change it with each version. Although this would save a few keystrokes for the customer, it would make it very difficult to secure the versions and to keep track of registration numbers and who is allowed to use each version. If a registration number leaks out, we don't want it to work for all future versions as well. We have also considered automating the installation process, but again, we feel that this unnecessarily complicates the issue. It also means each workstation would have to download the update separately which would take longer and would bog down our website. There are also no plans to 'activate' a trial version using a registration number. Many scenarios were considered, but it was decided that it would be better to download a new exe.