IReplStore::ReportStatus

Note   This interface is not supported on Windows CE 3.0-based platforms.

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

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

Parameters

  • hFolder
    Handle to the folder this status applies to. This parameter is NULL if status applies to all folders.

  • hItem
    Handle to the object this status applies to. This parameter is NULL if status applies to all objects.

  • uStatus
    Status code. It is one of the following values:

    Value Description
    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 service manager is about to call FindFirstItem and FindNextItem.
      RSC_END_CHECK The ActiveSync service 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_END_SYNC Synchronization has ended.
      RSC_BEGIN_CHECK The ActiveSync service manager is about to call FindFirstItem and FindNextItem.
      RSC_END_CHECK The ActiveSync service 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 service 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 service 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 service 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; that is, 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 one specific folder whether or not any objects of the type are dirty. hFolder is a pointer to the object name that will be synced
      RSC_DELETE_OBJ_FAILED There was a failture while deleting an object on the device. uParam is the HRESULT code.

    For ActiveSync 3.0, 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
    Additional information about the status, based on uStatus code.

Return Values

One of the values in the following table is returned.

Value Description
NOERROR The process indicated by uStatus is successful.
E_FAIL The process indicated by uStatus has failed or encountered problems.

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

Runs On Versions Defined in Include Link to
Windows CE OS 2.0 and later Cesync.h    

Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

See Also

IReplStore

 Last updated on Tuesday, July 13, 2004

© 1992-2000 Microsoft Corporation. All rights reserved.