IOfflineFilesSyncErrorInfo
COM公式ドキュメント
IOfflineFilesSyncProgress::SyncItemResult メソッドに渡され、同期エラーが発生したアイテムの詳細を通知します。
メソッド 7
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
エラーが発生した時点で実行されていた同期操作の種類を示す値を取得します。
| pSyncOp | OFFLINEFILES_SYNC_OPERATION* | out | 操作の種類を示す OFFLINEFILES_SYNC_OPERATION 列挙型の値を受け取ります。 |
戻り値
成功した場合は S_OK を、それ以外の場合はエラー値を返します。
同期エラーに関連付けられた同期操作中に検出された変更内容を示すフラグのセットを含む値を取得します。
| pdwItemChangeFlags | DWORD* | out | 同期操作中に検出された変更内容を示すフラグのセットを受け取ります。このパラメーターには、次のフラグ値を 1 つ以上指定できます。 OFFLINEFILES_SYNC_ITEM_CHANGE_NONE (0x00000000)変更は検出されませんでした。 OFFLINEFILES_SYNC_ITEM_CHANGE_CHANGETIME (0x00000001)アイテムの最終変更時刻がクライアントとサーバーとで異なっていました。 OFFLINEFILES_SYNC_ITEM_CHANGE_WRITETIME (0x00000002)アイテムの書き込み時刻がクライアントとサーバーとで異なっていました。 OFFLINEFILES_SYNC_ITEM_CHANGE_FILESIZE (0x00000004)アイテムのサイズがクライアントとサーバーとで異なっていました。 OFFLINEFILES_SYNC_ITEM_CHANGE_ATTRIBUTES (0x00000008)アイテムの属性のうち 1 つ以上がクライアントとサーバーとで異なっていました。 |
戻り値
成功した場合は S_OK を、それ以外の場合はエラー値を返します。
同期中に、アイテムのローカルコピー、リモートコピー、またはオリジナルコピーに対して情報が照会されたかどうかを示します。
| pbLocalEnumerated | BOOL* | out | 同期中にアイテムのローカルコピーに対して情報が照会された場合は TRUE を、それ以外の場合は FALSE を受け取ります。 |
| pbRemoteEnumerated | BOOL* | out | 同期中にアイテムのリモートコピーに対して情報が照会された場合は TRUE を、それ以外の場合は FALSE を受け取ります。 |
| pbOriginalEnumerated | BOOL* | out | 同期中にアイテムのオリジナルコピーに対して情報が照会された場合は TRUE を、それ以外の場合は FALSE を受け取ります。 |
戻り値
成功した場合は S_OK を、それ以外の場合はエラー値を返します。
同期中に、アイテムのローカルコピー、リモートコピー、またはオリジナルコピーの情報が取得されたかどうかを示します。
| pbLocalInfo | BOOL* | out | 同期中にアイテムのローカルコピーの情報が取得された場合は TRUE を、それ以外の場合は FALSE を受け取ります。TRUE の場合は、GetLocalInfo を呼び出してその情報を取得できます。 |
| pbRemoteInfo | BOOL* | out | 同期中にアイテムのリモートコピーの情報が取得された場合は TRUE を、それ以外の場合は FALSE を受け取ります。TRUE の場合は、GetRemoteInfo を呼び出してその情報を取得できます。 |
| pbOriginalInfo | BOOL* | out | 同期中にアイテムのオリジナルコピーの情報が取得された場合は TRUE を、それ以外の場合は FALSE を受け取ります。TRUE の場合は、GetOriginalInfo を呼び出してその情報を取得できます。 |
戻り値
成功した場合は S_OK を、それ以外の場合はエラー値を返します。
同期の対象となったアイテムのローカルコピーについて、ファイル時刻、サイズ、属性を保持する IOfflineFilesSyncErrorItemInfo インターフェイスのインスタンスを取得します。
| ppInfo | IOfflineFilesSyncErrorItemInfo** | out | 同期の対象となったアイテムのローカルコピーに関する情報を保持する IOfflineFilesSyncErrorItemInfo のインスタンスのアドレスを受け取ります。 |
戻り値
成功した場合は S_OK を、それ以外の場合はエラー値を返します。
同期の対象となったアイテムのリモートコピーについて、ファイル時刻、サイズ、属性を保持する IOfflineFilesSyncErrorItemInfo インターフェイスのインスタンスを取得します。
| ppInfo | IOfflineFilesSyncErrorItemInfo** | out | 同期の対象となったアイテムのリモートコピーに関する情報を保持する IOfflineFilesSyncErrorItemInfo のインスタンスのアドレスを受け取ります。 |
戻り値
成功した場合は S_OK を、それ以外の場合はエラー値を返します。
同期の対象となったアイテムのオリジナルコピーについて、ファイル時刻、サイズ、属性を保持する IOfflineFilesSyncErrorItemInfo インターフェイスのインスタンスを取得します。
| ppInfo | IOfflineFilesSyncErrorItemInfo** | out | 同期の対象となったアイテムのオリジナルコピーに関する情報を保持する IOfflineFilesSyncErrorItemInfo のインスタンスのアドレスを受け取ります。 |
戻り値
成功した場合は S_OK を、それ以外の場合はエラー値を返します。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IOfflineFilesSyncErrorInfo "{59F95E46-EB54-49D1-BE76-DE95458D01B0}" #usecom global IOfflineFilesSyncErrorInfo IID_IOfflineFilesSyncErrorInfo "{}" #comfunc global IOfflineFilesSyncErrorInfo_GetSyncOperation 5 var #comfunc global IOfflineFilesSyncErrorInfo_GetItemChangeFlags 6 var #comfunc global IOfflineFilesSyncErrorInfo_InfoEnumerated 7 var,var,var #comfunc global IOfflineFilesSyncErrorInfo_InfoAvailable 8 var,var,var #comfunc global IOfflineFilesSyncErrorInfo_GetLocalInfo 9 sptr #comfunc global IOfflineFilesSyncErrorInfo_GetRemoteInfo 10 sptr #comfunc global IOfflineFilesSyncErrorInfo_GetOriginalInfo 11 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IOfflineFilesSyncErrorInfo "{59F95E46-EB54-49D1-BE76-DE95458D01B0}" #usecom global IOfflineFilesSyncErrorInfo IID_IOfflineFilesSyncErrorInfo "{}" #comfunc global IOfflineFilesSyncErrorInfo_GetSyncOperation 5 sptr #comfunc global IOfflineFilesSyncErrorInfo_GetItemChangeFlags 6 sptr #comfunc global IOfflineFilesSyncErrorInfo_InfoEnumerated 7 sptr,sptr,sptr #comfunc global IOfflineFilesSyncErrorInfo_InfoAvailable 8 sptr,sptr,sptr #comfunc global IOfflineFilesSyncErrorInfo_GetLocalInfo 9 sptr #comfunc global IOfflineFilesSyncErrorInfo_GetRemoteInfo 10 sptr #comfunc global IOfflineFilesSyncErrorInfo_GetOriginalInfo 11 sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。