The .CAB files created using an .inf file are processor specific: Each one can be used with only one type of processor. To create processor-specific CAB files, you must append the processor type extension to some of the section names. For example:
[DefaultInstall] - shared by all platforms [DefaultInstall.sh3] - specific to the SH3 processor [DefaultInstall.mips] - specific to the MIPS processor
The following sections can be appended with a processor-specific extension:
[CEDevice] [DefaultInstall] [SourceDisksNames] [SourceDisksFiles]
An .inf file is made up of a number of sections, each of which starts with a section name in [brackets].
[Version] Signature="signature-name" Provider=provider-name CESignature="$Windows CE$"
[CEDevice] * [ProcessorType=processor-type] [UnsupportedPlatforms=platform-family-name [ , platform-family-name]] [VersionMin=[major_version.minor_version]] [VersionMax=[major_version.minor_version]] [BuildMin=[build-number]] [BuildMax=[build-number]]
All of the above keys are optional.
[DefaultInstall] CopyFiles=file-list-section [ , file-list-section]... AddReg=add-registry-section [ , add-registry-section]... CEShortcuts=shortcut-list-section [ , shortcut-list-section]... CESetupDLL=[DLL-filename] CESelfRegister=DLL-filename [ , DLL-filename]
[SourceDisksNames] disk-ordinal= , disk-label , , path . . .This section identifies and names the disk that contains the source files for file copying operations. The source files are listed in the [SourceDisksFiles] section (see below).
[SourceDisksFiles] filename=disk-ordinal [ , subdir] . . .This section names the source files used during installation and identifies the source disks that contain the files. The source disks are listed in the [SourceDisksNames] section (see above).
[DestinationDirs] file-list-section=0, subdir . . .This section defines the destination directories for the operations specified in the [CopyFiles] and [CEShortcuts] sections (see below).
The following table shows Windows Embedded CE directory identifiers and the resulting directories on devices running Windows Mobile 6 ProfessionalÊor Windows Mobile 6 Classic. If the default storage volume on the device is Storage, \Storage is added to the beginning of the directory identifiers.
%CE1% \Program Files %CE2% \Windows %CE4% \Windows\StartUp %CE5% \My Documents %CE8% \Program Files\Games %CE11% \Windows\Start Menu\Programs %CE14% \Windows\Start Menu\Programs\Games %CE15% \Windows\Fonts %CE17% \Windows\Start Menu
[CopyFiles] destination-file-name [ , source-file-name] [ , ,flag] . . .This section specifies files to be copied to the Windows CE device during installation. The actual file section name ("CopyFiles") is user-defined, and may vary.
COPYFLG_WARN_IF_SKIP 0x00000001 Warn a user if an attempt is made to skip a file after an error occurs. COPYFLG_NOSKIP 0x00000002 Do not allow a user to skip copying a file. COPYFLG_NO_OVERWRITE 0x00000010 Do not overwrite a file in the destination directory. COPYFLG_REPLACEONLY 0x00000400 Copy the source file to the destination directory only if the file is in the destination directory. CE_COPYFLG_NO_DATE_DIALOG 0x20000000 Do not copy if target is newer CE_COPYFLG_NODATECHECK 0x40000000 Ignore date and overwrite target CE_COPYFLG_SHARED 0x80000000 Reference-counting shared file
[CEShortcuts] * shortcut-file-name, type-flag, target-file/path [ , standard-destination-path] . . .This section specifies shortcuts to be created on the Windows CE device during installation. The actual shortcut section name ("CEShortcuts") is user-defined, and may vary.
[AddRegistry] reg-root-string, [subkey], [value-name], [flags], [value] . . .This section specifies registry entries to be created on the Windows CE device during installation. The actual registry section name ("AddRegistry") is user-defined, and may vary.
FLG_ADDREG_NOCLOBBER 0x00000002 If the registry key exists, do not overwrite it. This flag can be used in combination with any of the other flags in this table. FLG_ADDREG_TYPE_SZ 0x00000000 The REG_SZ registry data type. FLG_ADDREG_TYPE_MULTI_SZ 0x00010000 The REG_MULTI_SZ registry data type. The value field that follows can be a list of strings separated by commas. FLG_ADDREG_TYPE_BINARY 0x00000001 The REG_BINARY registry data type. The value field that follows must be a list of numeric values separated by commas, one byte per field, and must not use the 0x hexadecimal prefix. FLG_ADDREG_TYPE_DWORD 0x00010001 The REG_DWORD data type. Only the non-compatible format in the Win32 Setup .inf documentation is supported.
[CEStrings] * AppName=application-name InstallDir=default-installation-directory
[Strings] string-name=value . . .This section defines custom string macros to be used when the INF file is compiled.