================================================================= F-PROT for Windows AUTOINST installation utility Specification version : 1.18 Last update : 30.07.1997 Urmas Rahu Data Fellows Ltd. NOTE: This specification is implemented by Autoinst versions 97.03a0 and later. However, a small number of features of this specification are not supported by Autoinst yet: see NOTIMPL.TXT for a list of such features. ================================================================= =================================================== CONTENTS =================================================== [1] General [2] Invoking the program [3] Installing the files [4] Finding the local Windows directory [5] Administration features [6] Forcing preferences [7] Settings for AUTOINST [8] Gatekeeper's preferences [9] F-Agent [10] FPW [11] Windows version of AUTOINST [12] Installing TSRs (VIRSTOP etc) [13] Win 32 version of AUTOINST [14] SNMP [15] Generic groups =================================================== [1] General =========== AUTOINST will enable the system administrators to have Gatekeeper and/or FPW installed automatically on workstations that log on a network: the workstations will call a login batch script (LOGIN.BAT or smth) that will invoke AUTOINST. The program files and configuration files will be placed on a network drive by the administrator; AUTOINST will copy them to the local drive and make necessary changes to user's WIN.INI and SYSTEM.INI. AUTOINST will also handle updating and uninstallation, and can be used for changing the user's configuration (preferences). Security issues: [1.1] AUTOINST and its initialization file can be write protected by the administrator so that the workstations will only have read access to them. [1.2] AUTOINST will be checksum-protected to avoid its infection. [2] Invoking the program ======================== The installation parameters for AUTOINST are stored in an inifile, whose name may be given to AUTOINST on the command line: AUTOINST [switches] [inifile] If no inifile is given, AUTOINST will use AUTOINST.INI in the same subdirectory where it resides. Throughout this document, AUTOINST.INI will refer to the inifile for AUTOINST. [3] Installing the files ======================== [3.1] The [Install] section of AUTOINST.INI will specify the source directory (from where the files will be copied, on a network drive) and the destination directory (where the files will be installed, on a local drive), eg: [Install] InstallFrom=V:\GATEKEEP InstallTo=C:\WINDOWS\GATEKEEP Note: The "InstallTo=" and "InstallFrom=" entries may contain UNC pathnames. [3.1.1] Since version 96.10a2, Autoinst supports relative pathnames in the "InstallFrom=" entry: in that case, the path name is relative to the directory where the Autoinst executable is located. [3.2] Alternatively, "InstallToWin" may be used in place of "InstallTo" to specify a destination path relative to the user's Windows directory, eg: InstallToWin=GATEKEEP would install the program files to C:\WINDOWS\GATEKEEP if the workstation's Windows directory happened to be C:\WINDOWS (see section [4] about determining the user's Windows directory). If both "InstallTo=" and "InstallToWin=" are specified, "InstallTo=" will be used. [3.3] If the destination directory does not exist, it will be created. [3.4] The source directory may be write protected by the administrator. [3.5] If the "InstallFrom=" entry is not present or is empty, no error message will be produced. If it is not empty, error message will be produced if the specified directory does not exist, or if the specified destination directory is invalid (does not exist and creation fails). [3.6] AUTOINST would not have to copy files from the source to the destination directory each time it was invoked. The administrator may create a file named UPDATE.INI in the source directory and write an entry [LastChange] LastChange=YY-MM-DD specifying the date of creation or last change of the source files. AUTOINST will copy UPDATE.INI to the destination directory; therefore, both UPDATE.INIs in the source and destination directories will be identical after the installation. When AUTOINST gets invoked again, it will perform the copying only if the dates in the UPDATE.INIs in the source and destination directories don't match (or if either of them is missing, of course). [3.7] AUTOINST can also be used for performing remote installations. This means that AUTOINST will not perform copying of files from a net drive to a local drive: the installed application will be run straight from the net drive. For changing inifiles appropriately, AUTOINST will have to know where the application resides; this is specified in the [Install] section as eg: InstallRemote=V:\GATEKEEP "InstallFrom=" takes precedence over "InstallRemote=". "InstallTo=" and "InstallToWin=" will be ignored if "InstallFrom=" is not given. Note: The "InstallRemote=" entry may contain a UNC pathname. [3.7.1] Since version 96.10a2, Autoinst supports relative pathnames in the "InstallRemote=" entry: in that case, the path name is relative to the directory where the Autoinst executable is located. [3.8] For keeping track of installed software, AUTOINST will store the ID and the location of the software it installs in the [DFAPPS] section of user's WIN.INI, eg: [DFAPPS] FPW=C:\WINDOWS\GATEKEEP AUTOINST assumes that either F-PROT for Windows or Gatekeeper or both are installed, and the ID for them is "FPW". For installing other software, the ID should be specified in the [Install] section, as eg: SoftwareID=MySoftware No entry will be written to WIN.INI if a "null" software ID is specified: SoftwreID=0 IMPORTANT: Do NOT use a different ID when installing Gatekeeper or FPW; Either set "SoftwareID=FPW", or leave the "SoftwareID=" entry out. [4] Finding the local Windows directory ======================================= [4.1] AUTOINST will normally have to alter the workstation's local WIN.INI and SYSTEM.INI; for that, it would need to know the location of the workstation's Windows directory. The "WindowsDirectory=" entry in the [Local] section of AUTOINST.INI will determine that. As different PCs in the network may have different locations for their Windows directories, multiple paths may be given, eg: [Local] WindowsDirectory=C:\WINDOWS WindowsDirectory=C:\WINWG AUTOINST will examine the specified paths for the existence of certain Windows' files to make sure which of them is the proper Windows directory, if any. [4.1.1] Autoinst versions 96.04 and later accept environment variables in "WindowsDirectory=" entries in order to support network installations of Windows. The environment variable name must be enclosed in double quotation marks, eg: WindowsDirectory=H:\HOME\"USER"\WINDOWS [4.2] In case Autoinst is being run in a DOS session under Windows, the Windows directory will be obtained from the WINDIR environment variable, and the method described in [4.1] will only be used if this directory is not recognized as the Windows directory. [4.3] Note that none of the above ([4.1-2]) will apply for the Windows versions of Autoinst (see [11.3]). [5] Administration features =========================== Note that none of the settings here will have any effect if the preferences are not otherwise changed (see [6.4]). Gatekeeper and/or FPW may be set up in a networked environment so that information about infected files will be sent to the administrator (for FPW, there are also other admin-user communication features, see the documentation for FPW). For that, the communication directory must be established on a shared drive. The administrator will have to properly install F-PROT for Windows on his system to set up the communications directory and to manage that information. [5.1] Once this has been done, the administrator can specify the communication parameters in the [Administration] section of AUTOINST.INI, as eg: [Administration] AdministrationEnabled=1 CommunicationDirectory=V:\GATEKEEP\SHARED SpoolDirectory=C:\WINDOWS\GATEKEEP\SHARED UserName=%USER% WorkstationName=%USER%'s PC The rest of the settings in the [Administration] section will only take effect if the "AdministrationEnabled=" entry has a nonzero value. However, since version 96.07b0, Autoinst will set the user and workstation names even if AdministrationEnabled= is missing or has a value if zero. Note: The "CommunicationDirectory=" and "SpoolDirectory=" entries may contain UNC pathnames. [5.2] The "UserName=" and "WorkstationName=" entries specify the names of environment variables that contain the user and workstation names for the local workstation, respectively. These names are necessary for the administrator to identify the infected computer: upon finding an infected file, Gatekeeper (FPW) will send a message to the administrator, including the user and workstation names in the message. AUTOINST will fetch the values of the specified environment variables and store them in F-PROTW.CFG. The environment variables must be between the "%" characters; the rest of the text will be stored in F-PROTW.CFG as given. All these parameters are actually stored in the configuration file for FPW and Gatekeeper, F-PROTW.CFG. AUTOINST will simply take the values specified in AUTOINST.INI, perform the substitutions of environment variables, and store them in F-PROTW.CFG. Note: Upon activation, Gatekeeper will prompt for the user for the username and workstation name in case one of them is not specified, while administration has been enabled. [5.2.1] The user and workstation names can also be obtained from initialization files instead of the environment variables. For that, "UserNameFromIni=" and "WorkstationNameFromIni=" can be specified. The format for these entries is "inifile|section|entry". For example, if there was an entry UserNameFromIni=C:\TOOLS\PCTCP\PCTCP.INI|pctcp general|full-name then the user name would be obtained from C:\TOOLS\PCTCP\PCTCP.INI, from the "full-name=" entry in the [pctcp general] section. If there is no full pathname specified for the initialization file, it is assumed that the file is in the user's Windows directory. The "section" part of the entry can be a single space (" ") to specify that the entry in an inifile is not part of any section, eg UserNameFromIni=C:\USER.INI| |full-name [5.2.2] Multiple "UserNameFromIni=" and "WorkstationNameFromIni=" entries may be given. In that case, the first entry for which the specified value is found, will be used. Error message will be produced only if none of the given entries points to a value in an inifile. [5.3] If administration is to be enabled, AUTOINST will create an appropriate subdirectories structure on the local workstation. Gatekeeper and FPW will use these directories as a temporary storage before the data gets sent to the shared directory created by the administrator. These directories will be created under the directory specified in the "SpoolDirectory=" entry; if no such entry is present, a directory named "SHARED" under the program files directory (see section [3]) will be used. The directories created under the specified directory are: +--INFECT (used for storing infected files) |--REPORTS (used for storing reports and messages) \--SUSPECT (used for storing suspectedly infected files) The "SpoolDirectory=" entry should always be specified if remote installations (see [3.7]) are made, AUTOINST will give an error message if the entry is not present with a remote installation. [5.4] If administration is to be enabled, AUTOINST will make the following changes to the settings of the installed FPW: (1) Enable network features, (2) Switch to user mode, (3) Disable single installation setting. [6] Forcing preferences ======================= The settings for FPW and Gatekeeper are stored mainly in F-PROTW.CFG, and partially in some other files, like DFAPPS.INI and F-PROTW.INI. [6.1] AUTOINST will copy the files from the directory given in the "PreferencesFrom=" entry in the [Preferences] section to the local workstation's Windows directory, but the files previously residing there will not be overwritten. This will make sure that the changes to the settings made by a user will be retained. For example: [Preferences] PreferencesFrom=V:\GATEKEEP\USERS The administrator may thereby specify different configurations for different user groups by specifying different AUTOINST.INI configu- ration files with pointers to different preferences directories for distinct user groups. Note: The "PreferencesFrom=" entry may contain a UNC pathname. [6.1.1] Since version 96.09a0, Autoinst may be foreced to overwrite the previous configuration files by using the setting [Preferences] PreferencesOverwrite=1 Note that this setting is to be used for special purposes only, and is not generally recommended. A common problem is that the F-PROT toolbar will get corrupted with this setting: because of that, use it together with the [FPW] TasksOverwrite= setting (see [10.3.1]). [6.1.2] Since version 96.10a2, Autoinst supports relative pathnames in the "PreferencesFrom=" entry: in that case, the path name is relative to the directory where the Autoinst executable is located. [6.2] If there is no "PreferencesFrom=" entry specified, the following files, if present, will be copied from the directory specified in by "InstallFrom=" (or "InstallRemote=", if applicable) entry of the [Install] section: F-PROTW.CFG, F-PROTW.INI, DFAPPS.INI. [6.3] The administrator may force certain settings to be set to certain values each time AUTOINST is run by specifying these values in the [Preferences] section of AUTOINST.INI. The entry format is: set=filename|section|entry|value refers to a file in the local workstation's Windows directory. Note that this feature will also enable the system administrators to change settings in files like WIN.INI, SYSTEM.INI etc. For example, to force confirmation of killing a DOS section upon finding a virus, the administrator would write: [Preferences] set=F-PROTW.CFG|Protection|APActDOSKillConfirm|1 Because such section and entry names are often cryptic and not described in the FPW documentation, this feature might stay undocumented and reserved for special needs only. Instead, aliases for the mostly needed preferences would be defined and documented (essentially, "Communication- Directory=" in the [Administration] section is such an alias); for Gatekeeper, such preferences would be specified in the [Gatekeeper] section of AUTOINST.INI, as eg [Gatekeeper] ConfirmDosSessionKill=1 See section [8] for the description of Gatekeeper's preferences. [6.4] The administrator may specify that the changes to preferences are made only at certain times. For that, he would write LastChange=YY-MM-DD in the [Preferences] section. The specified date will be written into WIN.INI as [DFAPPS] SOFTWARE_ID|PrefsLastChange=YY-MM-DD (see [3.8] about the software ID.) If AUTOINST is run, and the respective dates in AUTOINST.INI and WIN.INI match, no changes are made to the settings. If no "LastChange=" entry is present, the changes will always be made. [6.5] AUTOINST can be used for adding Program Manager groups. For doing that, the administrator would have to prepare a groupfile and store it in a directory specified in the "PreferencesFrom=" entry: AUTOINST will then copy it to the user's Windows directory (see [6.1]). To add this group to Program Manager's groups, the administrator would have to write its name in an "AddGroup=" entry of the [Preferences] section, as eg AddGroup=F-PROTW.GRP [6.6] Certain initialization files, as eg F-PROTW.CFG, are encrypted to disallow the users from changing the settings manually. AUTOINST will decrypt such files before making changes there, and re-encrypt them afterwards. [7] Settings for AUTOINST ========================= The [Autoinst] section of AUTOINST.INI will specify the settings for the AUTOINST program itself: [Autoinst] ShowErrorMessages=1 ContactAdmin=Please contact your network administrators Beavis and Butt-Head at ext 666! ShowProgress=1 [7.1] The "ShowErrorMessages=" entry will specify whether AUTOINST will show error messages when it encounters problems with creating directories, copying files etc. On error, AUTOINST would display a message describing the error, along with the text specified in the "ContactAdmin=" entry. [7.2] The "ShowProgress=" entry will determine whether AUTOINST will display information about its actions (copying files etc). [7.3] The "ErrorIfNoWinDir=" entry will specify whether an error message will be shown if no Windows directory is found; the default value is 1. [7.4] The "InstallIfWinOnly=" entry will specify whether the software will be installed always, or only if Windows is found on the system. The default value is "0" (always install). Any combination of the following values may be used, separated by spaces, eg "InstallIfWinOnly=Win31 Win95": Win31 : install if Windows 3.1x installed Win95 : install if Windows 95 installed WinNT : install if Windows NT installed If the value is anything else but "0" and does not contain any of the platform identifiers above, installation will be made if any version of Windows is found. [7.5] The "StopAtExit=" entry will specify whether AUTOINST will stop execution after performing all its actions; the default value is 0. If the entry value is nonzero, AUTOINST will stop and show a message: "AUTOINST has terminated. Press ENTER to continue." [7.5.1] If the "StopAtExit=" entry equals "OnInstall", Autoinst will stop at exit and show the message only if a first-time local installation has been made. NOTE: This will change in a future version so that Autoinst will also stop after making a first-time remote installation. [7.6] AUTOINST can be forced to show special messages, specified in the inifile. Texts specified by the "WriteAtStartup=" entries will be shown at startup; texts specified by the "WriteAtInstall=" entries will be shown before program files are being copied; texts specified by the "WriteAtExit=" entries will be shown at the end. Multiple entries may be given, the messages get shown in the order of appearance in the inifile; empty lines will be shown for empty entries. [7.7] If "WriteAtExit=" is specified (see [7.6]), the default exit message as described in [7.5] will not be shown. [7.8] If the "NoVersionInfoDisplay=" entry is nonzero, no copyright and version information for AUTOINST will be shown. [7.9] Since version 97.02a0, Autoinst supports writing of its output into a logfile. The written text is exactly the same as shown on display, with the addition of timestamps of opening and closing of the log file. [7.9.1] The "LogFile=" entry specifies the name of the log file. For example, LogFile=C:\TMP\AILOG.TXT [7.9.2] The "LogFileAppend=" entry specifies whether the previous logfile should be overwritten, or appended to. If nonzero (default is zero), text will be appended to the previous logfile. [8] Gatekeeper's preferences ============================ The administrator may force certain Gatekeeper's preferences to be set in the [Gatekeeper] section of AUTOINST.INI. The settings that remain unspecified there will retain their values as stored in F-PROTW.CFG. Note that none of the settings here will have any effect if the preferences are not otherwise changed (see [6.4]). [8.1] Enabling Gatekeeper The "Enable=" entry will determine whether Gatekeeper will be enabled upon Windows startup. If Gatekeeper is to be enabled, AUTOINST will add A-PROT.EXE to the "RUN=" line of WIN.INI and add a "device=d:\path\F-PROTW.386" line to the [386Enh] section of SYSTEM.INI. If Gatekeeper is not to be enabled, AUTOINST will make sure these changes have been removed from WIN.INI and SYSTEM.INI. The following options are available: (1.1) "Enable=Always" will always enable Gatekeeper (1.2) "Enable=Never" will always disable Gatekeeper (1.3) "Enable=OnInstall" will only enable Gatekeeper if installation is performed (see section [3] about intallation and updating). (1.4) "Enable=OnUpdate" will only enable Gatekeeper if installation or update is performed. (1.5) "Enable=NotOnInstall" will only disable Gatekeeper if installation is performed. (1.6) "Enable=NotOnUpdate" will only disable Gatekeeper if installation or update is performed. NOTE: AUTOINST assumes that an update is being performed if any files exist in the destination ("InstallTo=" or "InstallToWin=") directory. [8.2] Uninstalling Gatekeeper The uninstallation feature has been removed from the specification. [8.3] Other options The "AccessSettings=" entry will specify whether the user can access the Gatekeeper Settings dialog to enable/disable Gatekeeper or otherwise change its settings. The "ConfirmDosSessionKill=" and "ConfirmWinDenyAccess=" entries will specify the values for the respective settings. [8.4] The "f-protw.386=" entry can be used to specify an alternative path for the device driver. If present, the "device=" entry written into SYSTEM.INI will not have the path to installation destination, but the entry will be written exactly as specified by this entry. This will enable the VxD to be loaded from a different location than the rest of Gatekeeper. Example: f-protw.386=c:\f-protw.386 An appropriate entry will also be written to F-PROTW.INI: it will be used by F-Agent when Gatekeeper gets enabled from it. [8.5] The "DontComplainIfNoVxD=" entry, if nonzero, will cause the Windows 3.1x Gatekeeper NOT to show an error message if F-PROTW.386 is not loaded in memory. [9] F-Agent =========== Note that none of the settings here will have any effect if the preferences are not otherwise changed (see [6.4]). [9.1] The "Load=" entry in the [F-Agent] section will determine whether F-Agent will be loaded upon Windows startup. WIN.INI will be appropriately changed. As with enabling Gatekeeper (see section [8]), there are six options: "Always", "Never", "OnInstall", "OnUpdate", "NotOnInstall", "NotOnUpdate". [9.2] Since version 96.09a0, F-Agent's execution command will be put into the registry under Windows 95 by the 32-bit Autoinst. [9.3] Since version 96.09a0, F-Agent will be started immediately by the Windows versions of Autoinst when F-Agent's automatic loading is being enabled. [9.4] Since version 96.10a2, Autow32 (the Win32 version of Autoinst) supports installation of the F-Agent NT service. This service is provided by FPAVSVC.EXE. The following AUTOINST.INI settings apply: [9.4.1] If the "EnableAsService=" entry has a nonzero value then Autoinst attempts to install the F-Agent service. [9.4.2] If the "EnableServiceAccountPrompt=" has a nonzero value then Autoinst will prompt for the service account information. The dialog shown will either display the name of the current user's account, or the name given by the "ServiceAccountName=" entry. [9.4.3] If the "ServiceAccountName=" entry is missing or has a value of zero then Autoinst will either install the service on Local System account (if the "EnableServiceAccountPrompt=" entry is missing or its value is zero), or will prompt for the account information (if the. "EnableServiceAccountPrompt=" entry has a nonzero value). Otherwise, the service will be installed under the given account name (which is possibly overriden at the account prompt). [9.4.4] The "ServiceAccountPassword=" entry specifies the password for the account given with the "ServiceAccountName=" entry; ignored if the latter is not given, or if the account prompt is shown. [10] FPW ======== The settings for F-PROT for Windows are specified in the [FPW] section. Note that none of the settings here will have any effect if the preferences are not otherwise changed (see [6.4]). [10.1] The uninstallation feature has been removed from the specification. [10.2] The "LocalDirectory=" entry will specify the root of the local data directories for FPW. The directories are used for storing task files, reports, bulletins and other items. If no "LocalDirectory=" entry is present and if FPW is installed, a directory named "LOCAL" under the program files directory (see section [3]) will be used. The directories created under the specified directory are: +--BULLETIN |--INFECT |--MESSAGES |--REPORTS |--REPUSER |--SUSPECT \--TASKS The "LocalDirectory=" entry should always be specified if remote installations (see [3.7]) are made, because the user's data files must reside on the local workstation. AUTOINST will give an error message if the entry is not present with a remote installation. Note: AUTOINST will assume that FPW is being installed if the Software ID is "FPW" (the default value, see [3.8]). Therefore, the local data directories will be created even if Gatekeeper is installed without FPW. [10.3] The "TasksFrom=" entry will specify the directory from where the task files are copied upon installation of FPW. Because the tasks must be in sync with the user's F-PROTW.CFG, the tasks must not be copied over the tasks previously installed. Therefore, they will be copied only if there are no tasks in the local workstation's tasks directory before. If the "LocalDirectory=" entry is missing and if the local programs directory is unknown, the tasks will not be copied because AUTOINST does not know the location of the local tasks directory. [10.3.1] Since version 96.09a0, Autoinst may be foreced to overwrite the previous task files by using the setting [FPW] TasksOverwrite=1 In that case, all the old tasks files in the user's local tasks directory will be deleted before copying the task files there from the "TasksFrom=" directory. This setting should be used together with the [Preferences] PreferencesOverwrite= setting, see [10.3.1]. [10.3.2] Since version 96.10a2, Autoinst supports relative pathnames in the "TasksFrom=" entry: in that case, the path name is relative to the directory where the Autoinst executable is located. [10.4] The Windows version of Autoinst supports the Program Manager groupfile creation for F-PROT for Windows. The parameters for the group to be created are given in the [FPW] section: [10.4.1] The "GroupName=" entry specifies the name of the Program Manager group to be created or updated, eg GroupName=F-PROT for Windows [10.4.2] The "IconX=" entries specify the program items to be created or updated: X denotes a number from 0 to 15. The entries have the format: IconX=ICON_TYPE, DRIVE_ID, TASK_NAME, ICON_TITLE ICON_TYPE can be one of the following: 0 : start FPW 1 : start F-Agent 2 : execute a task with FPW DRIVE_ID specifies the drive to be scanned by the task (0==A:, 1==B etc); it is used only if ICON_TYPE is 2. If the target system does not have the specified drive, the icon will not be created (this feature not implemented yet). 1000 denotes "All HDDs", 1001 denotes "All Network Drives". TASK_NAME specifies the name of the task to be launched when the icon is doubleclicked; it is used only if ICON_TYPE is 2. ICON_TITLE is the text that appears below the icon in Program Manager. An example of the group parameters: GroupName=F-PROT Professional for Windows Icon0=0,0,0,F-PROT for Windows Icon1=2,0,scana.fpt,Scan Drive A: Icon2=2,1,scanb.fpt,Scan Drive B: Icon3=2,1000,scanallh.fpt,Scan All Hard Drives Icon4=2,1001,scannetw.fpt,Scan Network [10.4.3] If the "LeaveExistingGroupIntact=" entry is present and has a nonzero value, the program group that has the name specified by the "GroupName=" setting already existing on the system will not be modified in any way. [10.4.4] If Autoinst is started from a logon script then it is possible that the Program Manager DDE used for creating the groups is unavailable at that time. If this is the case, Autoinst will wait until it becomes available, or until timeout occurs. The default timeout value is 15000 milliseconds; this value can be overriden by the "DDEPMTimeOut=" entry in the [Autoinst] section. [10.5] The DOS version of Autoinst also supports Program Manager groups creation as described in [10.4] (applies to Autoinst versions 96.01 and later). Autoinst (DOS) will not create the group by itself. Instead, it will create an inifile DFGROUP.INI in the target system's Windows directory, and will copy DFGROUP.EXE from the directory where AUTOINST.EXE resides, to the target system's Windows directory. DFGROUP.EXE will be put on the "run=" line of WIN.INI, causing DFGROUP.EXE to be executed at next Windows startup. DFGROUP.EXE will then create the program group, and will remove itself from WIN.INI's "run=" line, also deleting itself and DFGROUP.INI from the Windows directory. [10.5.1] The feature described in [10.4.3] is not supported by the DOS version of Autoinst. [11] Windows version of AUTOINST ================================ [11.1] The Windows version of AUTOINST behaves exactly, and accepts the same parameters, as the DOS version, except for as noted below, and as described in [10.4]. [11.2] The "WindowMode=" entry in the [Autoinst] section will determine the visibility of the AUTOINST window: 0 : The window is shown normally (the default) 1 : The window is shown minimized (iconized) 2 : The window will not be shown In any case, the window will be shown in case of an error, or if stop at exit is required (see [7.5]). [11.3] The local Windows directory is obtained from Windows; the "WindowsDirectory=" entries in the [Local] section (see [4]) will be ignored. [11.4] If FPW/Gatekeeper is being installed (ie, the software ID is "FPW"), F-PROT for Windows, F-Agent and Gatekeeper will be unloaded upon installation. After the installation, F-Agent and Gatekeeper will be reloaded. [11.5] The title (on the caption) of the AUTOINST window can be specified in the "WindowTitle=" entry of the [Autoinst] section. If not given, the window title will be "AUTOINST". [12] Installing TSRs (VIRSTOP etc) ================================== [12.1] The [TSRLoad] section will specify the load options for TSR programs like VIRSTOP and others. These programs should be installed on a workstation with AUTOINST like any other software (see [3]). [12.2] The "ID=" entry will define the identifier of the program. This identifier will be used in subsequent entries for specifying the load options for that program. Multiple TSRs may be installed by presenting multiple "ID=" entries and their options. Example: [TSRLoad] ID=VIRSTOP [12.3] The "=" entry (where stands for the ID as defined by the "ID=" entry) will specify the name of the executable for the TSR, eg: VIRSTOP=virstop.exe The executable name need not contain either the drive nor path, as they will be determined by the place of installation, as specified in the [Install] section ([3]). However, full pathname may be given here if an installation of a file already present on the system is desired. In any case, error will occur if the file is not found on the system. This entry is required; error will occur if it is not present. [12.4] The "|LoadFrom=" entry will specify the full pathname of the file from where the TSR will be loaded (will be called "load file" below), eg: VIRSTOP|LoadFrom=C:\AUTOEXEC.BAT The specified file should already exist; otherwise, an error condition will occur. This entry is required; error will occur if it is not present. [12.5] The "|LoadPos=" entry will specify the position in load file where the load command will be written. The following options are available: BeginFile : command will be written at file beginning (default) EndFile : command will be written at file end LineNumber, : command will be inserted before line number , negative line numbers denote lines from the end of file (-1 for the last line, -2 for the previous etc) RelativeToLineWith, , : command will be inserted lines after the first line containing ; may be negative for inserting the command before the line BeforeLineWith, : same as "RelativeToLineWith, -1, " AfterLineWith, : same as "RelativeToLineWith, 1, " For example, the following entry will cause the command to be written immediately before the line with "win.com": VIRSTOP|LoadPos=RelativeToLineWith, -1, win.com The parameter is case insensitive. [12.6] The "|LoadPrefix=" entry, if present, will specify a string to be inserted before the command. It is useful for making drivers to be loaded from CONFIG.SYS, or for specifying the LOADHIGH option. Examples: VIRSTOP|LoadPrefix="LH " VIRSTOP|LoadPrefix="device=" Note that the quotation marks are required. The prefix will be inserted immediately before the command without any spaces in between. [12.7] The "|LoadSuffix=" entry, if present, will specify a string to be appended to the command. It is useful for specifying load options for the program, eg: VIRSTOP|LoadSuffix=" /COPY" Note that the quotation marks are required. The prefix will be appended to the command immediately without any spaces in between. [12.8] The "|ReplaceOption=" entry will specify the action in case there already was a cammand with an executable as specified by the "=" entry in the file. The following options are available: RetainOld : the old command will always be retained, no change will be made to the load file RetainOldIfSame : the old command will be retained only if it exactly matches the new command (same paths, prefixes and suffixes) ReplaceOld : the old command will always be replaced The default is "RetainOldIfSame=". Note that unless the "|ReplaceAtOldPos=" entry is present and nonzero (see [12.9]), the new command will not necessarily be placed at the same position as the old: the new position will be determined by the "|LoadPos=" entry (see [12.5]). [12.9] The "|ReplaceAtOldPos=" entry, if nozero, will force the new command to be written at the place of the old command if the old command existed in the load file. In that case, the "|LoadPos=" entry will be ignored. [13] Win 32 version of AUTOINST ================================ [13.1] The Win 32 version of Autoinst (AUTOW32.EXE) works works similarly to the 16-bit Windows version (see [11]), with enhancements as described below. [13.2] Long pathnames are supported for all relevant directories and files. [13.3] In addition to the "UserName=", "UserNameFromIni=", "WorkstationName=" and "WorkstationNameFromIni=" settings (see [5.2]), the "UserNameFromRegistry=" and "WorkstationNameFromRegistry=" entries are supported. They will be used only if none of the entries described in [5.2] are present. Multiple "UserNameFromRegistry=" and "WorkstationNameFromRegistry=" entries may be used: the first one that points to a value in the registry will take effect. [13.3.1] The format for the values of both these entries (called "registry locators") is: MAINKEY [\ SUBKEY] \\ [VALUENAME] where: MAINKEY : main key name, must be one of: HKEY_CLASSES_ROOT", "HKEY_CURRENT_USER", "HKEY_LOCAL_MACHINE", "HKEY_USERS" SUBKEY : subkey name, may be missing VALUENAME : name of registry value, may be missing if the default value is to be used For example, these are all valid locator specifiers: ; all items present: UserNameFromRegistry=HKEY_LOCAL_MACHINE\Network\Logon\\username ; no subkey: UserNameFromRegistry=HKEY_LOCAL_MACHINE\\user-name ; no value name: UserNameFromRegistry=HKEY_LOCAL_MACHINE\Network\Logon\\ ; no subkey nor value name: UserNameFromRegistry=HKEY_LOCAL_MACHINE\\ [14] SNMP ========= SNMP-related settings are all located in the [SNMP] section. Note that none of the settings here will have any effect if the preferences are not otherwise changed (see [6.4]). [14.1] SNMP support is only present in Win32 version of Autoinst at the moment. [14.1.1] To be able to install or uninstall SNMP agents, Autoinst needs the SNMP setup support DLL, DFALSU32.DLL in its directory. Error message will be produced if SNMP agent installation is attempted without the presence of DFALSU32.DLL. [14.2] In order to install application-specific SNMP agents, the SNMP Master Agent (for example, the SNMP Service in NT) must be installed first. The value of "InstallMasterAgent=" determines whether Autoinst should attempt to install the Master Agent by itself (nonzero) or not (zero). Nonzero value may result in prompting for Windows setup diskettes and is therefore not recommended; the default value for that setting is 0. [14.2.1] No error message is produced if SNMP extension agents installation is wished, but no SNMP Master Agent is installed and the value of "InstallMasterAgent=" is 0. [14.3] The "EnableF-PROTAgent=" value specifies the installation/ uninstallation option for F-PROT SNMP Extension Agent. As with enabling Gatekeeper (see section [8.1]), there are six options: "Always", "Never", "OnInstall", "OnUpdate", "NotOnInstall", "NotOnUpdate". [14.3.1] Autoinst will only attempt to intall the F-PROT Extension Agent if the Agent's DLL, FPSNMP32.DLL, is found in the destination (installation) directory. Error message will be produced if F-PROT SNMP agent installation is attempted without the presence of FPSNMP32.DLL. [15] Generic groups =================== The settings described in this section can be used for creating Program Manager groups and icons (or Start Menu/Programs folders in Windows 95/ Windows NT 4 and later) for any installed software. [15.1] None of the settings here will have any effect if the preferences are not otherwise changed (see [6.4]). [15.2] The Generic Groups creation feature is supported by Windows versions of Autoinst (AUTOW31.EXE, AUTOW32.EXE only). [15.3] All groups to be created are specified by up to 16 group sections, named [Group0], [Group1], ..., [Group15]. Each group section specifies the name of the group that is to be created or modified, and the icons (program items or shortcuts) for that group; see [15.4] about the group section format. [15.4] Group section format [15.4.1] The group name is specified by the "GroupName=" entry. Any trailing spaces in the group name will be discarded. If a group with the given name already exists then it will be modified. [15.4.2] A group section has up to 32 icon entries, named "Icon0=", "Icon1=", ..., "Icon31=". The icon entries specify the program items to be created or modified. See [15.5] about the icon entry format. [15.5] Icon entry format [15.5.1] Each icon entry has the following format: IconX=COMMANDLINE|WORKINGDIR|ITEMNAME where: COMMANDLINE : full pathname of the command line for the item WORKINGDIR : working directory name for the item ITEMNAME : name of the program item Note: '|' (the separator) is the "pipe" character [15.5.2] Any trailing spaces in the item name will be discarded. If an item with that name already exists then it will be modified. [15.5.3] Although the WORKINGDIR parameter must be present in the icon entry, it is not used by Autoinst at the moment. [15.6] Generic group settings example [Group0] GroupName=Butterfinger Food Group Icon0=c:\win95\notepad.exe|c:\win95|Notepad Icon1=c:\win95\netwatch.exe|c:\win95|Netwatch ====================================================================== ====================================================================== ====================================================================== ====================================================================== CHANGE HISTORY SINCE 1.05 1.05 Added [5.2.1]. 1.06 Added [10.4] (implemented in Autoinst v95.08), changed [11.1]. 1.07 Changed [6.2]. 1.08 Changed [7.4] (12.09.95) Changed [4] (15.09.95) 1.09 Changed [5.2.1] (22.11.95) Added [7.5.1] (22.11.95) 1.10 Added [10.5] (07.01.96, impl. in Autoinst v96.01) Changed [8.2], [10.1] (07.01.96, removed the uninstallation feature) Rearranged [5.2], adding [5.2.2] (08.01.96, impl. in v96.01) Added [13] (10.01.96; [13.3] impl. in Autow32 v96.01) 1.11 Changed [3.1], [3.7], [5.1] and [6.1] to document that UNC pathnames are supported by Autoinst and F-PROT for Windows. 1.12 Added [4.1.1] (implemented in Autoinst v96.04) Added [10.4.3] and [10.5.1] (implemented in Autoinst v96.04) 1.13 Added [10.4.4] (implemented in Autoinst v96.05) Added [8.5] (implemented in Autoinst v96.05) 1.14 Added to [5.1] that "since version 96.07b0, Autoinst will set the user and workstation names even if AdministrationEnabled= is missing or has a value if zero." (implemented in Autoinst v96.07b0) 1.15 Added [6.1.1], [10.3.1] (implemented in Autoinst v96.09) Added [9.2], [9.3] (implemented in Autoinst v96.09) Changed [10.4.4] (behavior changed in Autoinst v96.09) 1.16 Added [9.4] (implemented in Autoinst v96.10a2) Added [3.1.1], [3.7.1], [6.1.2], [10.3.2] (implemented in Autoinst v96.10a2) 1.17 Added section [14] (SNMP, implemented in Autoinst v97.02a0) Added [7.9] (implemented in Autoinst v97.02a0) 1.18 Added section [15] (Generic Groups, implemented in Autoinst v97.03a0)