IReplStore::ReportStatus

A version of this page is also available for

Windows Embedded CE 6.0 R3

4/8/2010

This method is called by the ActiveSync manager to get information on the synchronization status.

Syntax

HRESULT ReportStatus(
  HREPLFLD hFolder,
  HREPLITEM hItem,
  UINT uStatus,
  UINT uParam
);

Parameters

  • hFolder
    [in] Handle to the folder this status applies to. This parameter is NULL if status applies to all folders.
  • hItem
    [in] Handle to the object this status applies to. This parameter is NULL if status applies to all objects.
  • uStatus
    [out] One of the following status codes.
  • RSC_BEGIN_SYNC
    Synchronization is about to start. uReserved is a combination of the following bit flags.

    Flag Description

    BSF_AUTO_SYNC

    Synchronization is started as a result of changes while "autosync on change" is turned on.

    BSF_REMOTE_SYNC

    Consistent with RSC_REMOTE_SYNC, set if synchronization is done remotely.

  • RSC_END_SYNC
    Synchronization has ended.
  • RSC_BEGIN_CHECK
    The ActiveSync manager is about to call FindFirstItem and FindNextItem.
  • RSC_END_CHECK
    The ActiveSync manager has completed all enumeration calls and FindItemClose has been called.
  • RSC_DATE_CHANGED
    The user has changed the system date. This code is called on every existing object in the store to give the ActiveSync service provider a chance to reset the date-dependent synchronization options. For example, if an ActiveSync service provider wants to synchronize files that are modified in the last two weeks, it can respond to this code to reset the enable bit for each item. When IsItemReplicated is called later, it re-evaluates the items based on the new date.
  • RSC_RELEASE
    The ActiveSync manager is about to release the IReplStore object. This is called before the final IReplStore::Release call.
  • RSC_REMOTE_SYNC
    If uParam is TRUE, the ActiveSync manager is about to start remote synchronization. The ActiveSync service provider should not show any UI that requires user interaction from now on until this status code is used again with uParam equal to FALSE.
  • RSC_INTERRUPT
    ActiveSync manager is about to interrupt the current operation. The following values of uParam are defined only for RSC_INTERRUPT.

    Value Description

    PSA_RESET_INTERRUPT

    This flag is set if the interrupt state is being cleared — normal operation is resuming.

    PSA_SYS_SHUTDOWN

    User has shut down the Windows operating system.

  • RSC_BEGIN_SYNC_OBJ
    Synchronization is about to start on an object type. uReserved is a combination of bit flags. See RSC_BEGIN_SYNC.
  • RSC_END_SYNC_OBJ
    Synchronization is about to end on an object type.
  • RSC_OBJ_TYPE_ENABLED
    Synchronization of the specified object is enabled. hFolder is a pointer to a string (object type name).
  • RSC_OBJ_TYPE_DISABLED
    Synchronization of the specified object is disabled. hFolder is a pointer to a string (object type name).
  • RSC_BEGIN_BATCH_WRITE
    A series of SetPackets is called on a number of objects. This is the time for ActiveSync service provider to start a transaction.
  • RSC_END_BATCH_WRITE
    RSC_BEGIN_BATCH_WRITE has ended. This is the time for the ActiveSync service provider to commit the transaction.
  • RSC_CONNECTION_CHG
    The connection status has changed. uParam is TRUE if a connection has been established; otherwise, it is FALSE.
  • RSC_WRITE_OBJ_FAILED
    There was a failure while writing to an object on the device. uParam is the HRESULT code.
  • RSC_WRITE_OBJ_SUCCESS
    Writing of an object succeeded on the device. uParam is a pointer to SDREQUEST, with (lpbData, cbData) representing the volume ID.
  • RSC_DELETE_OBJ_SUCCESS
    Deletion of an object succeeded on the device. uParam is a pointer to SDREQUEST, with (lpbData, cbData) representing the volume ID.
  • RSC_READ_OBJ_FAILED
    Failed to read an object from the device. uParam is the HRESULT code.
  • RSC_TIME_CHANGED
    System time has changed. This is called only once.
  • RSC_BEGIN_BACKUP
    Backup is about to start.
  • RSC_END_BACKUP
    Backup has ended.
  • RSC_BEGIN_RESTORE
    Restore is about to start.
  • RSC_PREPARE_SYNC_FLD
    Prepare to sync a specific folder whether or not any objects of the type are dirty. hFolder is a pointer to the object name that will be synched.
  • RSC_DELETE_OBJ_FAILED
    There was a failure while deleting an object on the device. uParam is the HRESULT code.

    The status code can be one of the following values.

    Value Description

    RSC_BEGIN_BACKUP

    Backup is about to begin.

    RSC_END_BACKUP

    Backup has ended.

    RSC_BEGIN_RESTORE

    Restore is about to begin.

    RSC_END_RESTORE

    Restore has ended.

  • uParam
    [in] Additional information about the status, based on uStatus code.

Return Value

Returns NOERROR if the process indicated by uStatus is successful. Returns E_FAIL if the process indicated by uStatus has failed or encountered problems.

If uStatus specifies RSC_WRITE_OBJ_FAILED, the method returns RERR_SKIP_ALL_OBJ to skip synchronization of all remaining objects.

Remarks

The ActiveSync service provider can return NOERROR for all cases if it is not interested.

This is an application programming interface (API) exported by the Store.dll for the synchronization engine.

Requirements

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

See Also

Reference

IReplStore