TWUPackageData
The TWUPackageData structure defines the package information that is
maintained for a package during a Tarma WebUpdate session. Most of the information
is initialized from the package information file,
but some fields are updated locally during the session.
typedef struct _TWUPackageData
{
UINT uStructSize;
DWORD dwInternalUse;
DWORD dwVersionLow;
DWORD dwVersionHigh;
LPARAM lUserCookie1;
LPARAM lUserCookie2;
TCHAR szPackageName[64];
TCHAR szProductCode[64];
TCHAR szDisplayName[256];
TCHAR szDisplayVersion[64];
TCHAR szInstallerPath[1024];
TCHAR szInstallerArgs[1024];
TCHAR szDependsOn[1024];
TCHAR szDownloadPath[MAX_PATH];
// From 3.3.2435 onwards:
TCHAR szAltProductCodes[1024];
} TWUPackageData;
Delphi version:
type TWUPackageData = record
begin
uStructSize: UINT;
dwInternalUse: DWORD;
dwVersionLow: DWORD;
dwVersionHigh: DWORD;
lUserCookie1: LPARAM;
lUserCookie2: LPARAM;
szPackageName: array[0..63] of TCHAR;
szProductCode: array[0..63] of TCHAR;
szDisplayName: array[0..255] of TCHAR;
szDisplayVersion: array[0..63] of TCHAR;
szInstallerPath: array[0..1023] of TCHAR;
szInstallerArgs: array[0..1023] of TCHAR;
szDependsOn: array[0..1023] of TCHAR;
szDownloadPath: array[0..259] of TCHAR;
{ From 3.3.2435 onwards: }
szAltProductCodes: array[0..1023] of TCHAR;
end;
Data members
- uStructSize
- Is set to sizeof(TWUPackageData) when the package information is
created and should not be modified.
- dwInternalUse
- Reserved for internal processing purposes. You should never modify this
field.
- dwVersionLow
- Low-order DWORD of the package version as specified by the Version
key in the package section of the package information
file.
- dwVersionHigh
- High-order DWORD of the package version as specified by the Version
key in the package section of the package information
file.
- lUserCookie1
- Available for client use, for example to store package-specific state
information. This field is initialized to 0 when the package information
is created and is never modified by the Tarma WebUpdate DLL.
- lUserCookie2
- Also available for client use, similar to lUserCookie1.
- szPackageName
- Internal name of the package as specified by the package's section header
in the package information file.
- szProductCode
- Installed product's unique code, as used to register the product's uninstallation
information as specified by the ProductCode key in the package
section of the package information file.
- szDisplayName
- User-visible name of the package as specified by the DisplayName
key in the package section of the package information
file.
- szDisplayVersion
- User-visible version of the package as specified by the DisplayVersion
key in the package section of the package information
file.
- szInstallerPath
- Path to the package installer on the server. This field is based on the
InstallerPath key in the package section of the package
information file, but is made fully qualified based on the package
information file's own location on the server.
- szInstallerArgs
- Command line arguments for the package installer as specified by the InstallerArgs
key in the package section of the package information
file.
- szDependsOn
- List of package dependencies for the package as specified by the DependsOn
key in the package section of the package information
file.
- szDownloadPath
- Fully qualified path to the (temporary) installer file on the local system.
This field is initialized by TWUGetInstallerPackage
when it downloads the package installer.
- szAltProductCodes
- Optional list of alternate product codes, separated by commas, as specified
by the AltProductCodes key in the package section of the package
information file. These product codes are tried, in order, if the
primary szProductCode is not present on the target system. This
field is only present from version 3.3.2435 onwards.