System.AppUserModel.ID

An explicit Application User Model ID (AppUserModelID) used to associate processes, files, and windows with a particular application. In some cases, it is sufficient to rely on the internal AppUserModelID assigned to a process by the system. However, an application that owns multiple processes or an application that is running in a host process might need to explicitly identify itself through this property so that it can group its otherwise disparate windows under a single taskbar button and control the contents of that application's Jump List.

To set this property on a window, use SHGetPropertyStoreForWindow to retrieve the window's property store, and use the methods of that retrieved IPropertyStore object to set the System.AppUserModel.ID property of that window.

For more information, see Application User Model IDs (AppUserModelIDs).

At the time the System.AppUserModel.ID property is set, the taskbar is notified to refresh its information on the window or shortcut given that AppUserModelID.

Other window and shortcut properties can be used in conjunction with an explicit AppUserModelID to further control the grouping and pinning associated with a window, the display name and icon used for it in the taskbar, and the command to launch either an application pinned to the taskbar or a new instance of the application through that application's Jump List. These properties should be set before setting the System.AppUserModel.ID property. For more information, see the following topics:

propertyDescription
     name = System.AppUserModel.ID
     shellPKey = PKEY_AppUserModel_ID
     formatID = 9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3
     propID = 5
     searchInfo
          inInvertedIndex = false
          isColumn = false
          isColumnSparse = true
          columnIndexType = OnDemand
          maxSize = 128
          mnemonics
     labelInfo
          label
          sortDescription
          invitationText
          hideLabel = false
     typeInfo
          type = String
          groupingRange = Discrete
          isInnate = false
          canBePurged = true
          multipleValues = false
          isGroup = false
          aggregationType = Default
          isTreeProperty = false
          isViewable = false
          searchRawValue = false
          conditionType = String
          defaultOperation = Equal
     aliasInfo
          sortByAlias = None
          additionalSortByAliases = None
     displayInfo
          defaultColumnWidth = 20
          displayType
          alignment = Left
          relativeDescriptionType = General
          defaultSortDirection = Ascending
          stringFormat
               formatAs = General
          booleanFormat
               formatAs = YesNo
          numberFormat
               formatAs = General
               formatDurationAs = hh:mm:ss
          dateTimeFormat
               formatAs = General
               formatTimeAs = ShortTime
               formatDateAs = ShortDate
          enumeratedList
               defaultText
               useValueForDefault = False
               enum
                    value
                    text
                    mnemonics
                    image
               enumRange
                    minValue
                    setValue
                    text
                    mnemonics
                    image
          drawControl
               control = Default
          editControl
               control = Default
          filterControl
               control = Default
          queryControl
               control = Default
     relatedPropertyInfo
          relatedProperty
               relationshipName
               propertyName

Remarks

PKEY values are defined in Propkey.h.

Related Topics

Tags :


Page view tracker