ホーム › Networking.BackgroundIntelligentTransferService › IBitsPeerCacheAdministration
IBitsPeerCacheAdministration
COMメソッド 14
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
| pBytes | DWORD* | out | ピアキャッシュの最大サイズ(バイト)を受け取る出力ポインタ。 |
| Bytes | DWORD | in | 設定するピアキャッシュの最大サイズ(バイト)。 |
| pSeconds | DWORD* | out | キャッシュコンテンツの最大保持期間(秒)を受け取る出力ポインタ。 |
| Seconds | DWORD | in | 設定するキャッシュコンテンツの最大保持期間(秒)。 |
| pFlags | DWORD* | out | 現在のピアキャッシュ構成フラグを受け取る出力ポインタ。 |
| Flags | DWORD | in | 設定するピアキャッシュ構成フラグ(キャッシュ提供/利用の有効化等)。 |
vtbl 9 HRESULT EnumRecords(IEnumBitsPeerCacheRecords** ppEnum)
| ppEnum | IEnumBitsPeerCacheRecords** | out | 全キャッシュレコードを列挙するIEnumBitsPeerCacheRecordsを受け取る出力ポインタ。 |
vtbl 10 HRESULT GetRecord(GUID* id, IBitsPeerCacheRecord** ppRecord)
| id | GUID* | in | 取得対象キャッシュレコードのGUID。 |
| ppRecord | IBitsPeerCacheRecord** | out | 取得したIBitsPeerCacheRecordを受け取る出力ポインタ。 |
vtbl 11 HRESULT ClearRecords()
vtbl 12 HRESULT DeleteRecord(GUID* id)
| id | GUID* | in | 削除対象キャッシュレコードのGUID。 |
| url | LPWSTR | in | 削除対象とするキャッシュレコードの元URL。 |
vtbl 14 HRESULT EnumPeers(IEnumBitsPeers** ppEnum)
| ppEnum | IEnumBitsPeers** | out | 既知のピアを列挙するIEnumBitsPeersを受け取る出力ポインタ。 |
vtbl 15 HRESULT ClearPeers()
vtbl 16 HRESULT DiscoverPeers()
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IBitsPeerCacheAdministration "{659CDEAD-489E-11D9-A9CD-000D56965251}" #usecom global IBitsPeerCacheAdministration IID_IBitsPeerCacheAdministration "{}" #comfunc global IBitsPeerCacheAdministration_GetMaximumCacheSize 3 var #comfunc global IBitsPeerCacheAdministration_SetMaximumCacheSize 4 int #comfunc global IBitsPeerCacheAdministration_GetMaximumContentAge 5 var #comfunc global IBitsPeerCacheAdministration_SetMaximumContentAge 6 int #comfunc global IBitsPeerCacheAdministration_GetConfigurationFlags 7 var #comfunc global IBitsPeerCacheAdministration_SetConfigurationFlags 8 int #comfunc global IBitsPeerCacheAdministration_EnumRecords 9 sptr #comfunc global IBitsPeerCacheAdministration_GetRecord 10 var,sptr #comfunc global IBitsPeerCacheAdministration_ClearRecords 11 #comfunc global IBitsPeerCacheAdministration_DeleteRecord 12 var #comfunc global IBitsPeerCacheAdministration_DeleteUrl 13 wstr #comfunc global IBitsPeerCacheAdministration_EnumPeers 14 sptr #comfunc global IBitsPeerCacheAdministration_ClearPeers 15 #comfunc global IBitsPeerCacheAdministration_DiscoverPeers 16 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IBitsPeerCacheAdministration "{659CDEAD-489E-11D9-A9CD-000D56965251}" #usecom global IBitsPeerCacheAdministration IID_IBitsPeerCacheAdministration "{}" #comfunc global IBitsPeerCacheAdministration_GetMaximumCacheSize 3 sptr #comfunc global IBitsPeerCacheAdministration_SetMaximumCacheSize 4 int #comfunc global IBitsPeerCacheAdministration_GetMaximumContentAge 5 sptr #comfunc global IBitsPeerCacheAdministration_SetMaximumContentAge 6 int #comfunc global IBitsPeerCacheAdministration_GetConfigurationFlags 7 sptr #comfunc global IBitsPeerCacheAdministration_SetConfigurationFlags 8 int #comfunc global IBitsPeerCacheAdministration_EnumRecords 9 sptr #comfunc global IBitsPeerCacheAdministration_GetRecord 10 sptr,sptr #comfunc global IBitsPeerCacheAdministration_ClearRecords 11 #comfunc global IBitsPeerCacheAdministration_DeleteRecord 12 sptr #comfunc global IBitsPeerCacheAdministration_DeleteUrl 13 wstr #comfunc global IBitsPeerCacheAdministration_EnumPeers 14 sptr #comfunc global IBitsPeerCacheAdministration_ClearPeers 15 #comfunc global IBitsPeerCacheAdministration_DiscoverPeers 16 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。