ホーム › System.ApplicationInstallationAndServicing › IPMEnumerationManager
IPMEnumerationManager
COMメソッド 18
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT get_AllApplications(IPMApplicationInfoEnumerator** ppAppEnum, PM_ENUM_FILTER Filter)
| ppAppEnum | IPMApplicationInfoEnumerator** | out | 条件に一致するすべてのアプリケーションを列挙する IPMApplicationInfoEnumerator を受け取るポインタへのポインタである。 |
| Filter | PM_ENUM_FILTER | in | 列挙対象を絞り込む PM_ENUM_FILTER を指定する。 |
vtbl 4 HRESULT get_AllTiles(IPMTileInfoEnumerator** ppTileEnum, PM_ENUM_FILTER Filter)
| ppTileEnum | IPMTileInfoEnumerator** | out | 条件に一致するすべてのタイルを列挙する IPMTileInfoEnumerator を受け取るポインタへのポインタである。 |
| Filter | PM_ENUM_FILTER | in | 列挙対象を絞り込む PM_ENUM_FILTER を指定する。 |
vtbl 5 HRESULT get_AllTasks(IPMTaskInfoEnumerator** ppTaskEnum, PM_ENUM_FILTER Filter)
| ppTaskEnum | IPMTaskInfoEnumerator** | out | 条件に一致するすべてのタスクを列挙する IPMTaskInfoEnumerator を受け取るポインタへのポインタである。 |
| Filter | PM_ENUM_FILTER | in | 列挙対象を絞り込む PM_ENUM_FILTER を指定する。 |
vtbl 6 HRESULT get_AllExtensions(IPMExtensionInfoEnumerator** ppExtensionEnum, PM_ENUM_FILTER Filter)
| ppExtensionEnum | IPMExtensionInfoEnumerator** | out | 条件に一致するすべての拡張機能を列挙する IPMExtensionInfoEnumerator を受け取るポインタへのポインタである。 |
| Filter | PM_ENUM_FILTER | in | 列挙対象を絞り込む PM_ENUM_FILTER を指定する。 |
vtbl 7 HRESULT get_AllBackgroundServiceAgents(IPMBackgroundServiceAgentInfoEnumerator** ppBSAEnum, PM_ENUM_FILTER Filter)
| ppBSAEnum | IPMBackgroundServiceAgentInfoEnumerator** | out | 条件に一致するすべてのバックグラウンドサービスエージェントを列挙する IPMBackgroundServiceAgentInfoEnumerator を受け取るポインタへのポインタである。 |
| Filter | PM_ENUM_FILTER | in | 列挙対象を絞り込む PM_ENUM_FILTER を指定する。 |
vtbl 8 HRESULT get_AllBackgroundWorkers(IPMBackgroundWorkerInfoEnumerator** ppBSWEnum, PM_ENUM_FILTER Filter)
| ppBSWEnum | IPMBackgroundWorkerInfoEnumerator** | out | 条件に一致するすべてのバックグラウンドワーカーを列挙する IPMBackgroundWorkerInfoEnumerator を受け取るポインタへのポインタである。 |
| Filter | PM_ENUM_FILTER | in | 列挙対象を絞り込む PM_ENUM_FILTER を指定する。 |
vtbl 9 HRESULT get_ApplicationInfo(GUID ProductID, IPMApplicationInfo** ppAppInfo)
| ProductID | GUID | in | 情報を取得する対象アプリケーションの製品 ID (GUID) を指定する。 |
| ppAppInfo | IPMApplicationInfo** | out | 対象アプリケーションの情報を表す IPMApplicationInfo を受け取るポインタへのポインタである。 |
vtbl 10 HRESULT get_TileInfo(GUID ProductID, LPWSTR TileID, IPMTileInfo** ppTileInfo)
| ProductID | GUID | in | 対象アプリケーションの製品 ID (GUID) を指定する。 |
| TileID | LPWSTR | in | 情報を取得する対象タイルの ID 文字列へのポインタである。 |
| ppTileInfo | IPMTileInfo** | out | 対象タイルの情報を表す IPMTileInfo を受け取るポインタへのポインタである。 |
vtbl 11 HRESULT get_TaskInfo(GUID ProductID, LPWSTR TaskID, IPMTaskInfo** ppTaskInfo)
| ProductID | GUID | in | 対象アプリケーションの製品 ID (GUID) を指定する。 |
| TaskID | LPWSTR | in | 情報を取得する対象タスクの ID 文字列へのポインタである。 |
| ppTaskInfo | IPMTaskInfo** | out | 対象タスクの情報を表す IPMTaskInfo を受け取るポインタへのポインタである。 |
vtbl 12 HRESULT get_TaskInfoEx(GUID ProductID, LPWSTR TaskID, IPMTaskInfo** ppTaskInfo)
| ProductID | GUID | in | 対象アプリケーションの製品 ID (GUID) を指定する。 |
| TaskID | LPWSTR | in | 情報を取得する対象タスクの ID 文字列へのポインタである。 |
| ppTaskInfo | IPMTaskInfo** | out | 対象タスクの拡張情報を表す IPMTaskInfo を受け取るポインタへのポインタである。 |
vtbl 13 HRESULT get_BackgroundServiceAgentInfo(DWORD BSAID, IPMBackgroundServiceAgentInfo** ppTaskInfo)
| BSAID | DWORD | in | 情報を取得する対象バックグラウンドサービスエージェントの ID を指定する。 |
| ppTaskInfo | IPMBackgroundServiceAgentInfo** | out | 対象エージェントの情報を表す IPMBackgroundServiceAgentInfo を受け取るポインタへのポインタである。 |
vtbl 14 HRESULT get_AllLiveTileJobs(IPMLiveTileJobInfoEnumerator** ppLiveTileJobEnum)
| ppLiveTileJobEnum | IPMLiveTileJobInfoEnumerator** | out | すべてのライブタイルジョブを列挙する IPMLiveTileJobInfoEnumerator を受け取るポインタへのポインタである。 |
vtbl 15 HRESULT get_LiveTileJob(GUID ProductID, LPWSTR TileID, PM_LIVETILE_RECURRENCE_TYPE RecurrenceType, IPMLiveTileJobInfo** ppLiveTileJobInfo)
| ProductID | GUID | in | 対象アプリケーションの製品 ID (GUID) を指定する。 |
| TileID | LPWSTR | in | 対象タイルの ID 文字列へのポインタである。 |
| RecurrenceType | PM_LIVETILE_RECURRENCE_TYPE | in | 取得するライブタイルジョブの繰り返し種別を示す PM_LIVETILE_RECURRENCE_TYPE を指定する。 |
| ppLiveTileJobInfo | IPMLiveTileJobInfo** | out | 対象ライブタイルジョブの情報を表す IPMLiveTileJobInfo を受け取るポインタへのポインタである。 |
vtbl 16 HRESULT get_ApplicationInfoExternal(GUID ProductID, IPMApplicationInfo** ppAppInfo)
| ProductID | GUID | in | 情報を取得する対象アプリケーションの製品 ID (GUID) を指定する。 |
| ppAppInfo | IPMApplicationInfo** | out | 外部公開用のアプリケーション情報を表す IPMApplicationInfo を受け取るポインタへのポインタである。 |
vtbl 17 HRESULT get_FileHandlerGenericLogo(LPWSTR FileType, PM_LOGO_SIZE LogoSize, LPWSTR* pLogo)
| FileType | LPWSTR | in | ロゴを取得する対象のファイル種別文字列へのポインタである。 |
| LogoSize | PM_LOGO_SIZE | in | 取得するロゴのサイズを示す PM_LOGO_SIZE を指定する。 |
| pLogo | LPWSTR* | inout | ファイルハンドラーの汎用ロゴのパス文字列を受け取るポインタへのポインタである。 |
vtbl 18 HRESULT get_ApplicationInfoFromAccessClaims(LPWSTR SysAppID0, LPWSTR SysAppID1, IPMApplicationInfo** ppAppInfo)
| SysAppID0 | LPWSTR | in | アクセスクレームを構成するシステムアプリ ID の 1 つ目の文字列へのポインタである。 |
| SysAppID1 | LPWSTR | in | アクセスクレームを構成するシステムアプリ ID の 2 つ目の文字列へのポインタである。 |
| ppAppInfo | IPMApplicationInfo** | out | アクセスクレームから特定したアプリケーション情報を表す IPMApplicationInfo を受け取るポインタへのポインタである。 |
vtbl 19 HRESULT get_StartTileEnumeratorBlob(PM_ENUM_FILTER Filter, DWORD* pcTiles, PM_STARTTILEBLOB** ppTileBlobs)
| Filter | PM_ENUM_FILTER | in | 列挙対象を絞り込む PM_ENUM_FILTER を指定する。 |
| pcTiles | DWORD* | out | 返されるタイル BLOB の個数を受け取る変数へのポインタである。 |
| ppTileBlobs | PM_STARTTILEBLOB** | out | スタート画面タイルを表す PM_STARTTILEBLOB の配列を受け取るポインタへのポインタである。 |
vtbl 20 HRESULT get_StartAppEnumeratorBlob(PM_ENUM_FILTER Filter, DWORD* pcApps, PM_STARTAPPBLOB** ppAppBlobs)
| Filter | PM_ENUM_FILTER | in | 列挙対象を絞り込む PM_ENUM_FILTER を指定する。 |
| pcApps | DWORD* | out | 返されるアプリ BLOB の個数を受け取る変数へのポインタである。 |
| ppAppBlobs | PM_STARTAPPBLOB** | out | スタート画面アプリを表す PM_STARTAPPBLOB の配列を受け取るポインタへのポインタである。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IPMEnumerationManager "{698D57C2-292D-4CF3-B73C-D95A6922ED9A}" #usecom global IPMEnumerationManager IID_IPMEnumerationManager "{}" #comfunc global IPMEnumerationManager_get_AllApplications 3 sptr,int #comfunc global IPMEnumerationManager_get_AllTiles 4 sptr,int #comfunc global IPMEnumerationManager_get_AllTasks 5 sptr,int #comfunc global IPMEnumerationManager_get_AllExtensions 6 sptr,int #comfunc global IPMEnumerationManager_get_AllBackgroundServiceAgents 7 sptr,int #comfunc global IPMEnumerationManager_get_AllBackgroundWorkers 8 sptr,int #comfunc global IPMEnumerationManager_get_ApplicationInfo 9 int,sptr #comfunc global IPMEnumerationManager_get_TileInfo 10 int,wstr,sptr #comfunc global IPMEnumerationManager_get_TaskInfo 11 int,wstr,sptr #comfunc global IPMEnumerationManager_get_TaskInfoEx 12 int,wstr,sptr #comfunc global IPMEnumerationManager_get_BackgroundServiceAgentInfo 13 int,sptr #comfunc global IPMEnumerationManager_get_AllLiveTileJobs 14 sptr #comfunc global IPMEnumerationManager_get_LiveTileJob 15 int,wstr,int,sptr #comfunc global IPMEnumerationManager_get_ApplicationInfoExternal 16 int,sptr #comfunc global IPMEnumerationManager_get_FileHandlerGenericLogo 17 wstr,int,var #comfunc global IPMEnumerationManager_get_ApplicationInfoFromAccessClaims 18 wstr,wstr,sptr #comfunc global IPMEnumerationManager_get_StartTileEnumeratorBlob 19 int,var,var #comfunc global IPMEnumerationManager_get_StartAppEnumeratorBlob 20 int,var,var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IPMEnumerationManager "{698D57C2-292D-4CF3-B73C-D95A6922ED9A}" #usecom global IPMEnumerationManager IID_IPMEnumerationManager "{}" #comfunc global IPMEnumerationManager_get_AllApplications 3 sptr,int #comfunc global IPMEnumerationManager_get_AllTiles 4 sptr,int #comfunc global IPMEnumerationManager_get_AllTasks 5 sptr,int #comfunc global IPMEnumerationManager_get_AllExtensions 6 sptr,int #comfunc global IPMEnumerationManager_get_AllBackgroundServiceAgents 7 sptr,int #comfunc global IPMEnumerationManager_get_AllBackgroundWorkers 8 sptr,int #comfunc global IPMEnumerationManager_get_ApplicationInfo 9 int,sptr #comfunc global IPMEnumerationManager_get_TileInfo 10 int,wstr,sptr #comfunc global IPMEnumerationManager_get_TaskInfo 11 int,wstr,sptr #comfunc global IPMEnumerationManager_get_TaskInfoEx 12 int,wstr,sptr #comfunc global IPMEnumerationManager_get_BackgroundServiceAgentInfo 13 int,sptr #comfunc global IPMEnumerationManager_get_AllLiveTileJobs 14 sptr #comfunc global IPMEnumerationManager_get_LiveTileJob 15 int,wstr,int,sptr #comfunc global IPMEnumerationManager_get_ApplicationInfoExternal 16 int,sptr #comfunc global IPMEnumerationManager_get_FileHandlerGenericLogo 17 wstr,int,sptr #comfunc global IPMEnumerationManager_get_ApplicationInfoFromAccessClaims 18 wstr,wstr,sptr #comfunc global IPMEnumerationManager_get_StartTileEnumeratorBlob 19 int,sptr,sptr #comfunc global IPMEnumerationManager_get_StartAppEnumeratorBlob 20 int,sptr,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。