Share via


OBJNOTIFY

The OBJNOTIFY structure is used to notify the ActiveSync service provider that an event that changes or deletes an object in the Windows CE file system has occurred. The service provider should use this structure to indicate how many objects have changed or been deleted.

Syntax

typedef struct tagObjNotify {
  UINT cbStruct;
  OBJTYPENAME szObjType;
  UINT uFlags;
  UINT uPartnerBit;
  CEOID oidObject;
  CEOIDINFO oidInfo;
  UINT cOidChg;
  UINT cOidDel;
  UINT * poid;
  LPBYTE lpbVolumeID;
  UINT cbVolumeID;
} OBJNOTIFY, *POBJNOTIFY;

Members

  • cbStruct
    Specifies the size of the structure, in bytes.
  • szObjType
    A null-terminated string that specifies the object type.
  • uFlags
    Specifies an unsigned integer that provides information about the object. See Remarks for the possible values. uPartnerBit
    Specifies either 1 if the desktop computer that is currently connected is partner 1 or 2 if it is partner 2.
  • oidObject
    Specifies the object ID.
  • oidInfo
    Specifies information about the object if the object has not been deleted.
  • cOidChg
    [out] Specifies the number of changed objects that should be synchronized.
  • cOidDel
    [out] Specifies the number of deleted objects that should be synchronized.
  • poid
    [out] Reference to an array of object IDs that are marked for synchronization. The ActiveSync service provider owns the memory referenced by this pointer. The process of synchronization does not free this memory.
  • lpbVolumeID
    Specifies the ID of the volume containing the objects.
  • cbVolumeID
    Specifies the size of the volume ID, in bytes.

Remarks

The following table lists the possible values for uFlags.

Flag Value Description
ONF_FILE 0x00000001 Object is a file.
ONF_DIRECTORY 0x00000002 Object is a directory.
ONF_DATABASE 0x00000004 Object is a database.
ONF_RECORD 0x00000008 Object is a record.
ONF_CHANGED 0x00000010 Object is changed.
ONF_DELETED 0x00000020 Object is deleted.
ONF_CLEAR_CHANGE 0x00000040 Client should clear the change bit for an object referenced by poid.
ONF_CALL_BACK 0x00000080 [out] Client requests that the server call the Windows CE ObjectNotify function in two seconds.
ONF_CALLING_BACK 0x00000100 Set if this call is a result of ONF_CALL_BACK being set earlier.

When uFlags is ONF_CHANGED, cOidChg specifies the number of objects in the list, referenced by poid, that should be synchronized. Set cOidChg to 0 when no object should be synchronized.

When uFlags is ONF_DELETED, cOidDel specifies the number of deleted objects in the list that should be synchronized. Set cOidDel to 0 when no object should be synchronized.

When uFlags is not ONF_CHANGED or ONF_DELETED, cOidChg specifies the number of objects in the first part of the list that are changed and cOidDel specifies the number of objects in the later part of the list that are not changed.

lpbVolumeID is NULL when the objects are stored in RAM.

Note   Earlier versions of Windows CE assigned object identifiers to objects in other file systems, such as the file allocation table (FAT) file system. These object identifiers were guaranteed to be unique within a volume but not across multiple volumes. Effective with Windows CE version 3.0, only objects in the object store have valid, unique object identifiers, and the object store is the only volume that can return an object identifier.

Requirements

Smartphone: Windows Mobile 2002 and later
OS Versions: Windows CE 3.0 and later
Header: cesync.h

See Also

ActiveSync API Structures

ObjectNotify

Last updated on Friday, April 22, 2005

© 2005 Microsoft Corporation. All rights reserved.

Send feedback on this topic to the authors.