OBJNOTIFY
A version of this page is also available for
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 |