##

DPLMSG_SETPROPERTY

Message sent by an application to the lobby to inform it that a property of a specific player or a property of the session has changed. These properties can range from the score or status of a player to the current level of a game or the current status of the session.

    typedef struct {
        DWORD    dwType;
        DWORD    dwRequestID
        GUID     guidPlayer;
        GUID     guidPropertyTag;
        DWORD    dwDataSize;
        DWORD    dwPropertyData[1];
    } DPLMSG_SETPROPERTY, FAR *LPDPLMSG_SETPROPERTY;

##### Members

dwType
  Identifies the message. This value is DPSYS_ SETPROPERTY.
dwRequestID
  A nonzero request ID supplied by the application if it would like confirmation that the data was recognized and set appropriately. If no confirmation is required, set this to DPL_NOCONFIRMATION.
guidPlayer
  GUID identifying the player that this property applies to (if applicable). If the property is not player-specific, this member should be set to GUID_NULL. The GUID for the player or players created by this application can be obtained from the lobby by requesting the DPLPROPERTY_PlayerGuid property.
guidPropertyTag
  A GUID identifying the property that is being set. The property can be one of the predefined GUIDs listed in the section DirectPlay Defined Properties or the application/lobby can define its own GUIDs for additional properties.
dwDataSize
  The size, in bytes, of the property data.
dwPropertyData
  A variable size buffer that contains the property data. The property tag will define how to interpret this data.

##### Remarks

Each property is identified by a GUID (defined by the application developer or the lobby developer), and it is the responsibility of the lobby to maintain a mapping of property GUIDs of the various applications to their descriptions and data types. The lobby server can choose to act on the information or ignore it.

When constructing this message, the application needs to allocate enough memory to hold the DPLMSG_ SETPROPERTY structure and the complete property data. For example, if the property data requires 52 bytes, the application will allocate (sizeof(DPLMSG_SETPROPERTY) + 52) bytes and assign it to a LPDPLMSG_SETPROPERTY pointer.

##### See Also

DPLMSG_SETPROPERTYRESPONSE

© 1997 Microsoft Corporation. All rights reserved. Terms of Use.