Flags Parameter
This page displays options for the Inno script [Files] section Flags Parameter. Selected options will be applied to the current file. To select an option, click in the checkbox to it’s left. To access the flag options page, click the "Flags" button located in the bottom right-hand corner of the Files page. See ScriptMaker Help for additional details on ScriptMaker program options.
The following options are supported:
CompareTimeStamp (Special-purpose)
Instructs Setup to proceed to comparing time stamps
When a file being copied already exists on the user's system, and has the same version info, selecting this option.instructs Setup to overwrite the existing file only if it has an older time stamp than the version of the file Setup is trying to install. When this option is left unchecked, Setup would not try to overwrite the existing file. This flag has no effect if the copy mode isn't either normal or AlwaysSkipIfSameOrOlder.
This flag is left in for backward compatibility only, and we recommend that you not use it.
NT users may encounter false "existing file is newer" messages when they change their system's time zone, or when daylight savings time goes into effect.
A similar problem can occur if an installation was compiled on an NTFS partition and the files are installed to a FAT partition, because times only have a 2-second resolution.on FAT partitions
ConfirmOverWrite
Instructs Setup to ask for user confirmation before overwriting an existing file.
DeleteAfterInstall
Instructs Setup to copy the file as usual, but delete it once the installation is completed or aborted. This can be useful for extracting temporary data needed by a program executed in the script's [Run] section.
This flag will have no affect on existing files that weren't replaced during installation.
This flag cannot be combined with the IsReadMe, RegServer, RegTypeLlib, RestartReplace, SharedFile, or UninsNeverUninstall flags.
RegServer
Instructs Setup to register the OLE server (a.k.a. ActiveX control), by locating and executing the DLL/OCX's DllRegisterServer export. The uninstaller calls DllUnregisterServer. When used in combination with SharedFile, the DLL/OCX will be unregistered only when the reference count reaches zero.
See the Remarks at the bottom of this topic for more information.
RegTypeLib
Instructs Setup to register the type library (.tlb). The uninstaller will unregister the type library (unless the flag UninsNeverUninstall is specified). When used in combination with SharedFile, the file will be unregistered by the uninstaller only when the reference count reaches zero.
See the Remarks at the bottom of this topic for more information.
NoRegError
When used in combination with either the RegServer or RegTypeLib flags, instructs Setup not to display an error message if the registration fails.
PromptIfOlder
When a file being installed has an older version number (or older time stamp, when the CompareTimeStamp flag is used) than an existing file, instructs Setup to give the user the option to replace the existing file. See the Remarks section at the bottom of this topic for more details.
RestartReplace
Instructs Setup to register locked files, designated for replacement, in either WININIT.INI or MOveFileEx for Windows and Windows NT respectively. These files will be replaced during the next system startup. When such files are encountered, the user will be prompted to restart the computer at the end of installation.
This flag is generally useful when replacing core system files.
To maintain compatibility with Windows 95/98 and Me, long filenames should not be used on an entry with this flag. Only "8.3" filenames are supported. (Windows NT platforms do not have this limitation.)
Important:
The RestartReplace flag will only successfully replace an "in-use" file on Windows NT platforms when the user has administrative privileges. If the user does not have administrative privileges, the following message will be displayed;
"RestartReplace failed: MoveFileEx failed; code 5."
Therefore, when using RestartReplace it is highly recommended that your installation require administrative privileges, by setting "PrivilegesRequired=admin" in the [Setup] section.
UnInsRestartDelete
Instructs the uninstaller to queue a file, currently in use, to be deleted when the system is restarted. When such files are encountered, the user will be prompted to restart the computer at the end of uninstallation.
This flag can be useful when uninstalling files such as shell extensions which cannot be programmatically stopped.
Note:
Administrative privileges are required on Windows NT/2000/XP for this flag to have an effect.
UnInsNeverUninstall
Instructs the uninstaller to never uninstall this file. Never remove the file. This flag can be useful when installing very common shared files that shouldn't be deleted under any circumstances, such as MFC DLLs.
Note:
If this flag is combined with the SharedFile flag, the file will never be deleted at uninstall time but the reference count will still be properly decremented.
UnInsRemoveReadOnly
Instructs Setup to remove a files' read-only attribute before attempting to delete it. during uninstallation
RecurseSubDirs
Instructs the compiler to search for the Source <filename><wildcard> in the subdirectories as well as the Source directory.
CreateAllSubDirs
Instructs Setup to create subdirectories, associated with a file, when they don't currently exist. Has an effect only when used in combination with RecurseSubDirs.
SortFilesByExtension
Instructs the compiler to compress the found files, sorted by extension before being sorted by path name. This potentially decreases the size of Setup if SolidCompression is also used.
FontIsntTrueType
Specify this flag if the entry is installing a non-TrueType font with the FontInstall parameter.
IsReadMe
Instructs Setup that this is the "README" file. Only one file in an installation can have this flag. When a file is designated a README, users will be given the option to view the README file after installation has been completed. If so desired, Setup will open the file with the default program the user has designated for that file type. For this reason, the README file should always end with an extension like .txt, .wri, or .doc.
Note:
The user will not be given an option to view the README file.when Setup has been instructed to restart the computer (as a result of installing a file with the flag RestartReplace, or if the AlwaysRestart [Setup] section directive is yes).
External
Instructs Setup to copy the file, specified by the Source parameter, from an existing file on the distribution media, or the user's system. If left unchecked, Setup will, instead, statically compile the file into the installation files.
SkipIfSourceDoesntExist
Instructs the installer, or Setup, if the external flag is also used, to silently skip over an entry, and not display an error message, when the source file does not exist. Has effect only when used in combination with the External flag.
OverWriteReadOnly
Instructs Setup to always overwrite a read-only file. Without this flag, Setup will give the user the option to overwrite existing read-only files.
OnlyIfDestFileExists
Instructs Setup to copy a file only when a file of the same name exists on the user's system. This flag may be useful if your installation is a patch to an existing installation, and you only want to replace files currently residing on the user's system.
OnlyIfDoesntExist
Instructs Setup to install a file only when it does not currently reside on the user's system.
ReplaceSameVersion
Instructs Setup to replace current files even when they appear to be the same version as the newer files. The default behavior is to retain the current files.
SharedFile (Windows 95/NT 4+ only)
This flag uses Windows' shared file counting feature, located in the registry at:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SharedDLLs)
It enables a file to be shared between applications, without worrying about it being inadvertently removed. Each time the file is installed, the reference count for the file is incremented. When an application using the file is uninstalled, the reference count is decremented. If the count reaches zero, the file is deleted (with the user's confirmation, unless the UnInsNoSharedFilePrompt flag is also specified).
Most files installed to the Windows System directory should use this flag, including .OCX, BPL, and .DPL (Delphi 3 package) files. One of the few exceptions is MFC DLLs, which should use the OnlyIfDoesntExist copy mode, in conjunction with the UninsNeverUninstall flag.
UnInsNoSharedFilePrompt
Instructs Setup to automatically remove a shared file, during uninstallation, whose reference count has reached zero. No user prompt will be displayed.
This flag must be used in combination with the SharedFile flag to have an effect.
NoEncryption
Prevents the file from being stored encrypted.
NoCompression
Prevents the compiler from attempting to compress the file.
DontVerifyChecksum
Prevents Setup from attempting to verify the checksum of the file. This flag must be used in combination with the NoCompression flag to have an effect.
Touch
Instructs Setup to set the time/date stamp of the installed file(s) to that which is specified by the TouchDate and TouchTime [Setup] section directives.
This flag has no effect if combined with the external flag.
Remarks
Setup registers all files with the RegServer or RegTypeLib flags as the last step of installation. However, if the [Setup] section directive AlwaysRestart is yes, or if there are files with the RestartReplace flag, all files get registered on the next reboot (by creating an entry in Windows' RunOnce registry key).
When files with a .HLP extension (Windows help files) are uninstalled, the corresponding .GID and .FTS files are automatically deleted as well.
DontCopy
Setup will not copy the file to the user's system. This flag is useful if the file is handled by the [Code] section exclusively.
IgnoreVersion
Setup will not compare any version info, and existing files will be overwritten regardless of their version number. This flag should only be used on files private to your application - never on shared system files.