PACKAGE_ID structure (appmodel.h)

Represents package identification information, such as name, version, and publisher.

Syntax

typedef struct PACKAGE_ID {
  UINT32          reserved;
  UINT32          processorArchitecture;
  PACKAGE_VERSION version;
  PWSTR           name;
  PWSTR           publisher;
  PWSTR           resourceId;
  PWSTR           publisherId;
} PACKAGE_ID;

Members

reserved

Type: UINT32

Reserved; do not use.

processorArchitecture

Type: UINT32

The processor architecture of the package. This member must be one of the values of the PROCESSOR_ARCHITECTURE_... constants that matches the ProcessorArchitecture enumeration values. This includes:

  • PROCESSOR_ARCHITECTURE_AMD64
  • PROCESSOR_ARCHITECTURE_ARM
  • PROCESSOR_ARCHITECTURE_ARM64
  • PROCESSOR_ARCHITECTURE_INTEL
  • PROCESSOR_ARCHITECTURE_IA32_ON_ARM64
  • PROCESSOR_ARCHITECTURE_NEUTRAL
  • PROCESSOR_ARCHITECTURE_UNKNOWN

version

Type: PACKAGE_VERSION

The version of the package.

name

Type: PWSTR

The name of the package.

publisher

Type: PWSTR

The publisher of the package. If there is no publisher for the package, this member is NULL.

resourceId

Type: PWSTR

The resource identifier (ID) of the package. If there is no resource ID for the package, this member is NULL.

publisherId

Type: PWSTR

The publisher identifier (ID) of the package. If there is no publisher ID for the package, this member is NULL.

Remarks

For info about string size limits, see Identity constants.

Requirements

Requirement Value
Minimum supported client Windows 8 [desktop apps only]
Minimum supported server Windows Server 2012 [desktop apps only]
Header appmodel.h

See also

GetCurrentPackageId

GetPackageId

GetPackagePath

PACKAGE_INFO

PackageFamilyNameFromId

PackageFullNameFromId

PackageIdFromFullName