Although snAppShot is a relatively easy program to run, some advanced features make it an extremely powerful tool. This section discusses the following advanced features included in the snAppShot utility. Using snAppShot PreferencesIf you think of snAppShot as a camera, and the .AOT file as the outputted "picture," you can think of snAppShot preferences as the adjustments you make to the camera (aperture settings, film speed, and focus) before you take the picture. snAppShot preferences let you control what snAppShot "sees" as it discovers the changes made to a workstation as a result of installing an application. In other words, you can specify/control information recorded about the certain items (described in the following sections) during an installation or upgrade. Files/FoldersUsing snAppShot preferences, you can include or exclude the recording of certain changes to particular folders and files. This enables you to protect certain directories that you do not want to alter on other workstations when the Application object is used on them to install or upgrade an application. Windows ShortcutsUsing snAppShot preferences, you can exclude particular Windows shortcut files from being recorded. This allows you to protect certain application shortcuts from being created or altered on other workstations during the installing or upgrading of an application. .INI FilesUsing snAppShot preferences, you can exclude particular application .INI files from being recorded. This enables you to protect certain application .INI files from being created or altered on other workstations when the Application object is used on them to install or upgrade an application. System Configuration FilesUsing snAppShot preferences, you can define which system configuration file changes are recorded. This enables you to set which system configuration changes should be recorded and created or altered on other workstations when the Application object is used on them to install or upgrade an application. Registry EntriesUsing snAppShot preferences, you can also include or exclude changes from particular portions of the Windows Registry from being recorded. This enables you to protect certain areas of the Windows Registry that you do not want to be altered on other workstations when the Application object is used on them to install or upgrade an application. Special MacrosSpecial macros are built-in machine- and user-specific values that the snAppShot utility is able to use to control how Application object templates are created. These special macros read from the Registry, enabling for the customization of Application objects in snAppShot. This customization enables you to distribute the same application to several machines that might have Windows installed or configured differently. The following is a list of some common macros:
TIP The online help that appears when you click the Help button on the Application Object Macros property page in ConsoleOne provides a detailed list of the macros available to snAppShot. When snAppShot starts, it asks the client library for a list of the special macros. This list combined with the user macros (created in the custom mode) make up the complete list of macros, which are then placed in order from the longest value to the shortest. While snAppShot runs, it records the differences between the pre-installation scan and the second scan. It then creates an entry in the .AOT file, during which snAppShot calls the routine that searches and replaces data with the macro's name. Later, when the Application Launcher is used to distribute the object, it gets the macro values from the .AOT file. The Application Launcher receives the values and names for these special macros by looking in the Registry under the key: HKEY_CURRENT_USER+Software+Microsoft+Windows+CurrentVersion+Explorer+Shell Folders The Application Launcher client creates a special macro using the name and value. NOTE If the value does not exist, the special macro is returned and the data value is set to blank. Let's say that a special macro is defined for a directory containing temporary files. The entry in the Windows Registry would appear as: HKEY_CURRENT_USER+Software+Microsoft+Windows+CurrentVersion+Explorer+Shell FoldersTempDir=C:\DATA\TEMP This Registry entry would correspond to the special macro: %*TempDir% Therefore, when snAppShot adds the creation information for the Registry entry in the .AOT or .AXT file, it writes an entry similar to the following: [Registry Value Create]Type=StringFlag=Write AlwaysKey=HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\SHellFoldersName=TempDirValue=%*TempDir% When the Application Launcher tries to distribute the settings, it sees the special macro value and then, in an attempt to set this Registry key, tries to read the value from this exact Registry key. If the Registry value was set before the application is distributed, this process works beautifully; however, if it is not set until after the application is distributed, the Application Launcher tries to use data from the same Registry entry that it is trying to create. This problem can be remedied in two ways:
Partial Install DetectionIf your application needs to reboot the workstation to finish the installation, snAppShot recognizes this and picks up where it left off before the reboot. All snAppShot data is stored in a hidden directory on the C: drive. Furthermore, snAppShot is automatically run after the machine is restarted. When snAppShot restarts, it detects a partial installation, and a window pops up and allows you to continue with the previous installation. |