2.2.1.3.2.2.1 New or Existing Notification Icons

The Notification Icon Information Order packet is generated by the server whenever a new notification icon is created on the server or when an existing notification icon is updated.


0


1


2


3


4


5


6


7


8


9

1
0


1


2


3


4


5


6


7


8


9

2
0


1


2


3


4


5


6


7


8


9

3
0


1

Hdr (15 bytes)

...

...

...

Version (optional)

...

ToolTip (variable)

...

InfoTip (variable)

...

State (optional)

Icon (variable)

...

CachedIcon (optional)

Hdr (15 bytes): A TS_NOTIFYICON_ORDER_HEADER structure. Common AltSec Order header. The FieldsPresentFlags field of the header MUST conform to the values defined as follows.

Value

Meaning

WINDOW_ORDER_TYPE_NOTIFY

0x02000000

Indicates a Windowing Alternate Secondary Drawing Order specifying a notification icon. This flag MUST be set.

WINDOW_ORDER_STATE_NEW

0x10000000

Indicates that the Windowing Alternate Secondary Drawing Order contains information for a new notification icon. If this flag is set, one of the Icon and CachedIcon fields MUST be present. If this flag is not set, the Windowing Alternate Secondary Drawing Order contains information for an existing notification icon.

WINDOW_ORDER_FIELD_NOTIFY_VERSION

0x00000008

Indicates that the Version field is present.

WINDOW_ORDER_FIELD_NOTIFY_TIP

0x00000001

Indicates that the ToolTip field is present.

WINDOW_ORDER_FIELD_NOTIFY_INFO_TIP

0x00000002

Indicates that the InfoTip field is present.

WINDOW_ORDER_FIELD_NOTIFY_STATE

0x00000004

Indicates that the State field is present.

WINDOW_ORDER_ICON

0x40000000

Indicates that the Icon field is present. Either the Icon or the CachedIcon field SHOULD be present, but not both.

WINDOW_ORDER_CACHED_ICON

0x80000000

Indicates that the CachedIcon field is present. Either the Icon or the CachedIcon field SHOULD be present, but not both. <10>

Version (4 bytes): An unsigned 32-bit integer. Specifies the behavior of the notification icons. This field is present only if the WINDOW_ORDER_FIELD_NOTIFY_VERSION flag is set in the FieldsPresentFlags field of TS_NOTIFYICON_ORDER_HEADER. This field MUST be set to one of the following values.

Value

Meaning

0

Use this value for applications designed for Windows NT 4.0 operating system.

3

Use the Windows 2000 operating system notification icons behavior. Use this value for applications designed for Windows 2000 and Windows XP operating system.

4

Use the current behavior. Use this value for applications designed for Windows Vista operating system and Windows 7 operating system.

For more information about notification icons, see [MSDN-SHELLNOTIFY], the Remarks section.

ToolTip (variable): Variable length. UNICODE_STRING. Specifies the text of the notification icon tooltip. This structure is present only if the WINDOW_ORDER_FIELD_NOTIFY_TIP flag is set in the FieldsPresentFlags field of TS_NOTIFYICON_ORDER_HEADER.

InfoTip (variable): Variable length. A TS_NOTIFY_ICON_INFOTIP structure. Specifies the notification icon’s balloon tooltip. This field SHOULD NOT be present for icons that follow Windows 95 operating system behavior (Version = 0). This structure is present only if the WINDOW_ORDER_FIELD_NOTIFY_INFO_TIP flag is set in the FieldsPresentFlags field of TS_NOTIFYICON_ORDER_HEADER.

State (4 bytes): Unsigned 32-bit integer. Specifies the state of the notification icon. This field SHOULD NOT be present for icons that follow Windows 95 behavior (Version = 0).

This field is present only if the WINDOW_ORDER_FIELD_NOTIFY_STATE flag is set in the FieldsPresentFlags field of TS_NOTIFYICON_ORDER_HEADER.

Value

Meaning

1

The notification icon is hidden.

Icon (variable): Variable length. A TS_ICON_INFO structure. Specifies the notification icon’s image. This structure is present only if the WINDOW_ORDER_ICON flag is set in the FieldsPresentFlags field of TS_NOTIFYICON_ORDER_HEADER.

A Notification Icon Order MUST NOT contain both an Icon field and a CachedIcon field. If the WINDOW_ORDER_STATE_NEW flag is set, either the Icon field or the CachedIcon field MUST be present.

CachedIcon (3 bytes): Three bytes. A TS_CACHED_ICON_INFO structure. Specifies the notification icon as a cached icon on the client.

This structure is present only if the WINDOW_ORDER_CACHEDICON flag is set in the FieldsPresentFlags field of TS_NOTIFYICON_ORDER_HEADER. Only one of Icon and CachedIcon fields SHOULD be present in the Notification Icon Order. If the WINDOW_ORDER_STATE_NEW flag is set, only one of these fields MUST be present.