ホーム › Storage.OfflineFiles › IOfflineFilesCache
IOfflineFilesCache
COMメソッド 17
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT Synchronize(HWND hwndParent, LPWSTR* rgpszPaths, DWORD cPaths, BOOL bAsync, DWORD dwSyncControl, IOfflineFilesSyncConflictHandler* pISyncConflictHandler, IOfflineFilesSyncProgress* pIProgress, GUID* pSyncId)
| hwndParent | HWND | inoptional | 進捗 UI を表示する際の親ウィンドウハンドルである。UI が不要な場合は NULL を指定できる。 |
| rgpszPaths | LPWSTR* | in | 同期対象のパス文字列の配列である。 |
| cPaths | DWORD | in | rgpszPaths 配列に含まれるパスの数を指定する DWORD である。 |
| bAsync | BOOL | in | 非同期で同期処理を実行するかどうかを指定する BOOL である。 |
| dwSyncControl | DWORD | in | 同期動作を制御するフラグを指定する DWORD である。 |
| pISyncConflictHandler | IOfflineFilesSyncConflictHandler* | inoptional | 同期中に発生した競合を処理する IOfflineFilesSyncConflictHandler へのポインタである。不要な場合は NULL を指定できる。 |
| pIProgress | IOfflineFilesSyncProgress* | inoptional | 進捗通知を受け取る IOfflineFilesSyncProgress へのポインタである。不要な場合は NULL を指定できる。 |
| pSyncId | GUID* | inoptional | この同期操作を識別する GUID を受け取るポインタである。不要な場合は NULL を指定できる。 |
vtbl 4 HRESULT DeleteItems(LPWSTR* rgpszPaths, DWORD cPaths, DWORD dwFlags, BOOL bAsync, IOfflineFilesSimpleProgress* pIProgress)
| rgpszPaths | LPWSTR* | in | 削除対象のパス文字列の配列である。 |
| cPaths | DWORD | in | rgpszPaths 配列に含まれるパスの数を指定する DWORD である。 |
| dwFlags | DWORD | in | 削除動作を制御するフラグを指定する DWORD である。 |
| bAsync | BOOL | in | 非同期で削除処理を実行するかどうかを指定する BOOL である。 |
| pIProgress | IOfflineFilesSimpleProgress* | inoptional | 進捗通知を受け取る IOfflineFilesSimpleProgress へのポインタである。不要な場合は NULL を指定できる。 |
vtbl 5 HRESULT DeleteItemsForUser(LPWSTR pszUser, LPWSTR* rgpszPaths, DWORD cPaths, DWORD dwFlags, BOOL bAsync, IOfflineFilesSimpleProgress* pIProgress)
| pszUser | LPWSTR | in | 削除対象とするユーザーを指定する文字列である。 |
| rgpszPaths | LPWSTR* | in | 削除対象のパス文字列の配列である。 |
| cPaths | DWORD | in | rgpszPaths 配列に含まれるパスの数を指定する DWORD である。 |
| dwFlags | DWORD | in | 削除動作を制御するフラグを指定する DWORD である。 |
| bAsync | BOOL | in | 非同期で削除処理を実行するかどうかを指定する BOOL である。 |
| pIProgress | IOfflineFilesSimpleProgress* | inoptional | 進捗通知を受け取る IOfflineFilesSimpleProgress へのポインタである。不要な場合は NULL を指定できる。 |
vtbl 6 HRESULT Pin(HWND hwndParent, LPWSTR* rgpszPaths, DWORD cPaths, BOOL bDeep, BOOL bAsync, DWORD dwPinControlFlags, IOfflineFilesSyncProgress* pIProgress)
| hwndParent | HWND | inoptional | 進捗 UI を表示する際の親ウィンドウハンドルである。UI が不要な場合は NULL を指定できる。 |
| rgpszPaths | LPWSTR* | in | ピン留め対象のパス文字列の配列である。 |
| cPaths | DWORD | in | rgpszPaths 配列に含まれるパスの数を指定する DWORD である。 |
| bDeep | BOOL | in | サブフォルダーを含めて再帰的にピン留めするかどうかを指定する BOOL である。 |
| bAsync | BOOL | in | 非同期でピン留め処理を実行するかどうかを指定する BOOL である。 |
| dwPinControlFlags | DWORD | in | ピン留め動作を制御するフラグを指定する DWORD である。 |
| pIProgress | IOfflineFilesSyncProgress* | inoptional | 進捗通知を受け取る IOfflineFilesSyncProgress へのポインタである。不要な場合は NULL を指定できる。 |
vtbl 7 HRESULT Unpin(HWND hwndParent, LPWSTR* rgpszPaths, DWORD cPaths, BOOL bDeep, BOOL bAsync, DWORD dwPinControlFlags, IOfflineFilesSyncProgress* pIProgress)
| hwndParent | HWND | inoptional | 進捗 UI を表示する際の親ウィンドウハンドルである。UI が不要な場合は NULL を指定できる。 |
| rgpszPaths | LPWSTR* | in | ピン留め解除対象のパス文字列の配列である。 |
| cPaths | DWORD | in | rgpszPaths 配列に含まれるパスの数を指定する DWORD である。 |
| bDeep | BOOL | in | サブフォルダーを含めて再帰的にピン留めを解除するかどうかを指定する BOOL である。 |
| bAsync | BOOL | in | 非同期でピン留め解除処理を実行するかどうかを指定する BOOL である。 |
| dwPinControlFlags | DWORD | in | ピン留め解除動作を制御するフラグを指定する DWORD である。 |
| pIProgress | IOfflineFilesSyncProgress* | inoptional | 進捗通知を受け取る IOfflineFilesSyncProgress へのポインタである。不要な場合は NULL を指定できる。 |
| pbEncrypted | BOOL* | out | キャッシュが暗号化されているかどうかを受け取る BOOL へのポインタである。 |
| pbPartial | BOOL* | out | キャッシュが部分的にのみ暗号化されているかどうかを受け取る BOOL へのポインタである。 |
vtbl 9 HRESULT Encrypt(HWND hwndParent, BOOL bEncrypt, DWORD dwEncryptionControlFlags, BOOL bAsync, IOfflineFilesSyncProgress* pIProgress)
| hwndParent | HWND | inoptional | 進捗 UI を表示する際の親ウィンドウハンドルである。UI が不要な場合は NULL を指定できる。 |
| bEncrypt | BOOL | in | 暗号化するか(TRUE)復号するか(FALSE)を指定する BOOL である。 |
| dwEncryptionControlFlags | DWORD | in | 暗号化動作を制御するフラグを指定する DWORD である。 |
| bAsync | BOOL | in | 非同期で暗号化処理を実行するかどうかを指定する BOOL である。 |
| pIProgress | IOfflineFilesSyncProgress* | inoptional | 進捗通知を受け取る IOfflineFilesSyncProgress へのポインタである。不要な場合は NULL を指定できる。 |
vtbl 10 HRESULT FindItem(LPWSTR pszPath, DWORD dwQueryFlags, IOfflineFilesItem** ppItem)
| pszPath | LPWSTR | in | 検索対象とするキャッシュ項目のパスを指定する文字列である。 |
| dwQueryFlags | DWORD | in | クエリ動作を制御するフラグを指定する DWORD である。 |
| ppItem | IOfflineFilesItem** | out | 見つかった項目を表す IOfflineFilesItem を受け取るポインタのアドレスである。 |
vtbl 11 HRESULT FindItemEx(LPWSTR pszPath, IOfflineFilesItemFilter* pIncludeFileFilter, IOfflineFilesItemFilter* pIncludeDirFilter, IOfflineFilesItemFilter* pExcludeFileFilter, IOfflineFilesItemFilter* pExcludeDirFilter, DWORD dwQueryFlags, IOfflineFilesItem** ppItem)
| pszPath | LPWSTR | in | 検索対象とするキャッシュ項目のパスを指定する文字列である。 |
| pIncludeFileFilter | IOfflineFilesItemFilter* | inoptional | 対象に含めるファイルを指定する IOfflineFilesItemFilter へのポインタである。不要な場合は NULL を指定できる。 |
| pIncludeDirFilter | IOfflineFilesItemFilter* | inoptional | 対象に含めるディレクトリを指定する IOfflineFilesItemFilter へのポインタである。不要な場合は NULL を指定できる。 |
| pExcludeFileFilter | IOfflineFilesItemFilter* | inoptional | 対象から除外するファイルを指定する IOfflineFilesItemFilter へのポインタである。不要な場合は NULL を指定できる。 |
| pExcludeDirFilter | IOfflineFilesItemFilter* | inoptional | 対象から除外するディレクトリを指定する IOfflineFilesItemFilter へのポインタである。不要な場合は NULL を指定できる。 |
| dwQueryFlags | DWORD | in | クエリ動作を制御するフラグを指定する DWORD である。 |
| ppItem | IOfflineFilesItem** | out | 見つかった項目を表す IOfflineFilesItem を受け取るポインタのアドレスである。 |
| pszPathOriginal | LPWSTR | in | 変更前の項目パスを指定する文字列である。 |
| pszPathNew | LPWSTR | in | 変更後の新しい項目パスを指定する文字列である。 |
| bReplaceIfExists | BOOL | in | 変更先が既に存在する場合に上書きするかどうかを指定する BOOL である。 |
| ppszPath | LPWSTR* | out | オフラインファイルキャッシュの格納場所のパスを受け取る文字列ポインタのアドレスである。返された文字列は解放する。 |
vtbl 14 HRESULT GetDiskSpaceInformation(ULONGLONG* pcbVolumeTotal, ULONGLONG* pcbLimit, ULONGLONG* pcbUsed, ULONGLONG* pcbUnpinnedLimit, ULONGLONG* pcbUnpinnedUsed)
| pcbVolumeTotal | ULONGLONG* | out | ボリューム全体の総容量(バイト数)を受け取る ULONGLONG へのポインタである。 |
| pcbLimit | ULONGLONG* | out | キャッシュ全体に許可された上限容量(バイト数)を受け取る ULONGLONG へのポインタである。 |
| pcbUsed | ULONGLONG* | out | キャッシュで使用中の容量(バイト数)を受け取る ULONGLONG へのポインタである。 |
| pcbUnpinnedLimit | ULONGLONG* | out | ピン留めされていない項目に許可された上限容量(バイト数)を受け取る ULONGLONG へのポインタである。 |
| pcbUnpinnedUsed | ULONGLONG* | out | ピン留めされていない項目が使用中の容量(バイト数)を受け取る ULONGLONG へのポインタである。 |
| cbLimit | ULONGLONG | in | キャッシュ全体に設定する上限容量(バイト数)を指定する ULONGLONG である。 |
| cbUnpinnedLimit | ULONGLONG | in | ピン留めされていない項目に設定する上限容量(バイト数)を指定する ULONGLONG である。 |
vtbl 16 HRESULT ProcessAdminPinPolicy(IOfflineFilesSyncProgress* pPinProgress, IOfflineFilesSyncProgress* pUnpinProgress)
| pPinProgress | IOfflineFilesSyncProgress* | inoptional | 管理者ピン留めポリシー適用時のピン留め進捗を受け取る IOfflineFilesSyncProgress へのポインタである。不要な場合は NULL を指定できる。 |
| pUnpinProgress | IOfflineFilesSyncProgress* | inoptional | 管理者ピン留めポリシー適用時のピン留め解除進捗を受け取る IOfflineFilesSyncProgress へのポインタである。不要な場合は NULL を指定できる。 |
vtbl 17 HRESULT GetSettingObject(LPWSTR pszSettingName, IOfflineFilesSetting** ppSetting)
| pszSettingName | LPWSTR | in | 取得する設定の名前を指定する文字列である。 |
| ppSetting | IOfflineFilesSetting** | out | 取得した設定を表す IOfflineFilesSetting を受け取るポインタのアドレスである。 |
vtbl 18 HRESULT EnumSettingObjects(IEnumOfflineFilesSettings** ppEnum)
| ppEnum | IEnumOfflineFilesSettings** | out | 設定オブジェクトを列挙する IEnumOfflineFilesSettings を受け取るポインタのアドレスである。 |
vtbl 19 HRESULT IsPathCacheable(LPWSTR pszPath, BOOL* pbCacheable, OFFLINEFILES_CACHING_MODE* pShareCachingMode)
| pszPath | LPWSTR | in | キャッシュ可能かどうかを判定する対象のパスを指定する文字列である。 |
| pbCacheable | BOOL* | out | 指定パスがキャッシュ可能かどうかを受け取る BOOL へのポインタである。 |
| pShareCachingMode | OFFLINEFILES_CACHING_MODE* | out | 対象共有のキャッシュモードを受け取る OFFLINEFILES_CACHING_MODE へのポインタである。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IOfflineFilesCache "{855D6203-7914-48B9-8D40-4C56F5ACFFC5}" #usecom global IOfflineFilesCache IID_IOfflineFilesCache "{48C6BE7C-3871-43CC-B46F-1449A1BB2FF3}" #comfunc global IOfflineFilesCache_Synchronize 3 sptr,var,int,int,int,sptr,sptr,var #comfunc global IOfflineFilesCache_DeleteItems 4 var,int,int,int,sptr #comfunc global IOfflineFilesCache_DeleteItemsForUser 5 wstr,var,int,int,int,sptr #comfunc global IOfflineFilesCache_Pin 6 sptr,var,int,int,int,int,sptr #comfunc global IOfflineFilesCache_Unpin 7 sptr,var,int,int,int,int,sptr #comfunc global IOfflineFilesCache_GetEncryptionStatus 8 var,var #comfunc global IOfflineFilesCache_Encrypt 9 sptr,int,int,int,sptr #comfunc global IOfflineFilesCache_FindItem 10 wstr,int,sptr #comfunc global IOfflineFilesCache_FindItemEx 11 wstr,sptr,sptr,sptr,sptr,int,sptr #comfunc global IOfflineFilesCache_RenameItem 12 wstr,wstr,int #comfunc global IOfflineFilesCache_GetLocation 13 var #comfunc global IOfflineFilesCache_GetDiskSpaceInformation 14 var,var,var,var,var #comfunc global IOfflineFilesCache_SetDiskSpaceLimits 15 int64,int64 #comfunc global IOfflineFilesCache_ProcessAdminPinPolicy 16 sptr,sptr #comfunc global IOfflineFilesCache_GetSettingObject 17 wstr,sptr #comfunc global IOfflineFilesCache_EnumSettingObjects 18 sptr #comfunc global IOfflineFilesCache_IsPathCacheable 19 wstr,var,var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IOfflineFilesCache "{855D6203-7914-48B9-8D40-4C56F5ACFFC5}" #usecom global IOfflineFilesCache IID_IOfflineFilesCache "{48C6BE7C-3871-43CC-B46F-1449A1BB2FF3}" #comfunc global IOfflineFilesCache_Synchronize 3 sptr,sptr,int,int,int,sptr,sptr,sptr #comfunc global IOfflineFilesCache_DeleteItems 4 sptr,int,int,int,sptr #comfunc global IOfflineFilesCache_DeleteItemsForUser 5 wstr,sptr,int,int,int,sptr #comfunc global IOfflineFilesCache_Pin 6 sptr,sptr,int,int,int,int,sptr #comfunc global IOfflineFilesCache_Unpin 7 sptr,sptr,int,int,int,int,sptr #comfunc global IOfflineFilesCache_GetEncryptionStatus 8 sptr,sptr #comfunc global IOfflineFilesCache_Encrypt 9 sptr,int,int,int,sptr #comfunc global IOfflineFilesCache_FindItem 10 wstr,int,sptr #comfunc global IOfflineFilesCache_FindItemEx 11 wstr,sptr,sptr,sptr,sptr,int,sptr #comfunc global IOfflineFilesCache_RenameItem 12 wstr,wstr,int #comfunc global IOfflineFilesCache_GetLocation 13 sptr #comfunc global IOfflineFilesCache_GetDiskSpaceInformation 14 sptr,sptr,sptr,sptr,sptr #comfunc global IOfflineFilesCache_SetDiskSpaceLimits 15 int64,int64 #comfunc global IOfflineFilesCache_ProcessAdminPinPolicy 16 sptr,sptr #comfunc global IOfflineFilesCache_GetSettingObject 17 wstr,sptr #comfunc global IOfflineFilesCache_EnumSettingObjects 18 sptr #comfunc global IOfflineFilesCache_IsPathCacheable 19 wstr,sptr,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※#usecom 末尾は CoCreateInstance 用のクラスID(コクラスCLSID, SDKから自動取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。