OBJNOTIFY

A version of this page is also available for

Windows Embedded CE 6.0 R3

4/8/2010

This structure is used to notify the ActiveSync service provider that an object in the Windows Embedded CE file system has changed or been deleted.

Syntax

typedef struct tagObjNotify {
  UINT cbStruct;
  OBJTYPENAME szObjType[MAX_OBJTYPE_NAME];
  UINT uFlags;
  UINT uPartnerBit;
  CEOID oidObject;
  CEOIDINFO oidInfo;
  UINT cOidChg;
  UINT cOidDel;
  UINT* poid;
} OBJNOTIFY, *POBJNOTIFY;

Members

  • cbStruct
    Size of the structure, in bytes. This member is populated by the server before the structure is passed into the ObjectNotify device module function.
  • szObjType
    Null-terminated string that contains the name of the object type. This member is populated by the server before the structure is passed into the ObjectNotify device module function.
  • uFlags
    Unsigned integer that contains one of the following values. This member is populated by the server before the structure is passed into the ObjectNotify device module function.

    Value Description

    ONF_FILE

    The object is a file.

    ONF_DIRECTORY

    The object is a directory.

    ONF_DATABASE

    The object is a database.

    ONF_RECORD

    The object is a record.

    ONF_CHANGED

    Set if the file system object is changed.

    ONF_DELETED

    Set if the file system object is deleted.

    ONF_CLEAR_CHANGE

    Client should clear the change bit for the object whose object identifier is pointed at by poid.

    ONF_CALL_BACK

    [out] Client asks server to call ObjectNotify two seconds later.

    ONF_CALLING_BACK

    Set if this call is a result of ONF_CALL_BACK being set earlier.

  • uPartnerBit
    Specifies either 1 if the desktop currently connected is partner #1 or 2 if the desktop is partner #2. This member is populated by the server before the structure is passed into the ObjectNotify device module function.
  • oidObject
    Object identifier of the file system object, representing a file, a database, or a database record. This member is populated by the server before the structure is passed into the ObjectNotify device module function.
  • oidInfo
    Stores information about the object if the object has not been deleted. This member is populated by the server before the structure is passed into the ObjectNotify device module function.
  • cOidChg
    When ONF_CHANGED is set, this is the number of OIDs that should be replicated. Set to 0 if no object should be replicated because of this change. When both ONF_CHANGED and ONF_DELETED are not set, this is the number of OIDs in the first part of the list for objects that are changed. The device provider should populate this member in its ObjectNotify implementation.
  • cOidDel
    When ONF_DELETED is set, this is the number of deleted OIDs that should be replicated. Set to 0 if no object should be replicated because of this delete. When both ONF_CHANGED and ONF_DELETED are not set, this is the number of object identifiers in the later. part of the list for objects that are not changed. The device provider should populate this member in its ObjectNotify implementation.
  • poid
    Pointer to an array of object identifiers that should be marked as needed for replication. The first cOidChg elements are for the changed objects, the last cOidDel elements are for the deleted objects. Memory pointed to by this pointer is owned by the ActiveSync service provider. It will not be freed by replication. The device provider should populate this member in its ObjectNotify implementation.

Remarks

This structure is passed to the ObjectNotify function to inform the provider that an event that changes or deletes an object in the Windows Embedded CE file system has occurred. The provider should return, by means of this structure, how many replication objects have changed or been deleted because of this change or deletion to a file system object.

When ONF_CHANGED is set, cOidChg is the number of object identifiers in the list that should be synchronized (cOidDel is not used).

When ONF_DELETED is set, cOidDel is the number of deleted object identifiers in the list that should be synchronized (cOidChg is not used).

Note

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

Requirements

Header cesync.h
Windows Embedded CE Windows CE 2.0 and later
Windows Mobile Windows Mobile Version 5.0 and later