ホーム › Devices.PortableDevices › IPortableDeviceServiceCapabilities
IPortableDeviceServiceCapabilities
COMメソッド 16
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 3 HRESULT GetSupportedMethods(IPortableDevicePropVariantCollection** ppMethods)
| ppMethods | IPortableDevicePropVariantCollection** | out | サービスがサポートするメソッドのGUID集合を受け取る出力先。 |
vtbl 4 HRESULT GetSupportedMethodsByFormat(GUID* Format, IPortableDevicePropVariantCollection** ppMethods)
| Format | GUID* | in | 対象とする形式のGUIDへのポインタ。 |
| ppMethods | IPortableDevicePropVariantCollection** | out | その形式で利用可能なメソッドのGUID集合を受け取る出力先。 |
vtbl 5 HRESULT GetMethodAttributes(GUID* Method, IPortableDeviceValues** ppAttributes)
| Method | GUID* | in | 属性を照会するメソッドのGUIDへのポインタ。 |
| ppAttributes | IPortableDeviceValues** | out | メソッドの属性を格納したIPortableDeviceValuesを受け取る出力先。 |
vtbl 6 HRESULT GetMethodParameterAttributes(GUID* Method, PROPERTYKEY* Parameter, IPortableDeviceValues** ppAttributes)
| Method | GUID* | in | 対象メソッドのGUIDへのポインタ。 |
| Parameter | PROPERTYKEY* | in | 属性を照会するパラメーターのキーを指すPROPERTYKEYへのポインタ。 |
| ppAttributes | IPortableDeviceValues** | out | パラメーターの属性を格納したIPortableDeviceValuesを受け取る出力先。 |
vtbl 7 HRESULT GetSupportedFormats(IPortableDevicePropVariantCollection** ppFormats)
| ppFormats | IPortableDevicePropVariantCollection** | out | サービスがサポートする形式のGUID集合を受け取る出力先。 |
vtbl 8 HRESULT GetFormatAttributes(GUID* Format, IPortableDeviceValues** ppAttributes)
| Format | GUID* | in | 属性を照会する形式のGUIDへのポインタ。 |
| ppAttributes | IPortableDeviceValues** | out | 形式の属性を格納したIPortableDeviceValuesを受け取る出力先。 |
vtbl 9 HRESULT GetSupportedFormatProperties(GUID* Format, IPortableDeviceKeyCollection** ppKeys)
| Format | GUID* | in | プロパティを照会する形式のGUIDへのポインタ。 |
| ppKeys | IPortableDeviceKeyCollection** | out | その形式でサポートされるプロパティキー集合を受け取る出力先。 |
vtbl 10 HRESULT GetFormatPropertyAttributes(GUID* Format, PROPERTYKEY* Property, IPortableDeviceValues** ppAttributes)
| Format | GUID* | in | 対象とする形式のGUIDへのポインタ。 |
| Property | PROPERTYKEY* | in | 属性を照会するプロパティのキーを指すPROPERTYKEYへのポインタ。 |
| ppAttributes | IPortableDeviceValues** | out | プロパティの属性を格納したIPortableDeviceValuesを受け取る出力先。 |
vtbl 11 HRESULT GetSupportedEvents(IPortableDevicePropVariantCollection** ppEvents)
| ppEvents | IPortableDevicePropVariantCollection** | out | サービスがサポートするイベントのGUID集合を受け取る出力先。 |
vtbl 12 HRESULT GetEventAttributes(GUID* Event, IPortableDeviceValues** ppAttributes)
| Event | GUID* | in | 属性を照会するイベントのGUIDへのポインタ。 |
| ppAttributes | IPortableDeviceValues** | out | イベントの属性を格納したIPortableDeviceValuesを受け取る出力先。 |
vtbl 13 HRESULT GetEventParameterAttributes(GUID* Event, PROPERTYKEY* Parameter, IPortableDeviceValues** ppAttributes)
| Event | GUID* | in | 対象イベントのGUIDへのポインタ。 |
| Parameter | PROPERTYKEY* | in | 属性を照会するイベントパラメーターのキーを指すPROPERTYKEYへのポインタ。 |
| ppAttributes | IPortableDeviceValues** | out | イベントパラメーターの属性を格納したIPortableDeviceValuesを受け取る出力先。 |
vtbl 14 HRESULT GetInheritedServices(DWORD dwInheritanceType, IPortableDevicePropVariantCollection** ppServices)
| dwInheritanceType | DWORD | in | 継承の種類を示すフラグ(WPD_SERVICE_INHERITANCE_IMPLEMENTATION等)。 |
| ppServices | IPortableDevicePropVariantCollection** | out | 継承元サービスのGUID集合を受け取る出力先。 |
vtbl 15 HRESULT GetFormatRenderingProfiles(GUID* Format, IPortableDeviceValuesCollection** ppRenderingProfiles)
| Format | GUID* | in | レンダリングプロファイルを照会する形式のGUIDへのポインタ。 |
| ppRenderingProfiles | IPortableDeviceValuesCollection** | out | その形式のレンダリングプロファイル群を格納したIPortableDeviceValuesCollectionを受け取る出力先。 |
vtbl 16 HRESULT GetSupportedCommands(IPortableDeviceKeyCollection** ppCommands)
| ppCommands | IPortableDeviceKeyCollection** | out | サービスがサポートするコマンドのキー集合を受け取る出力先。 |
vtbl 17 HRESULT GetCommandOptions(PROPERTYKEY* Command, IPortableDeviceValues** ppOptions)
| Command | PROPERTYKEY* | in | オプションを照会するコマンドのキーを指すPROPERTYKEYへのポインタ。 |
| ppOptions | IPortableDeviceValues** | out | そのコマンドのオプション情報を格納したIPortableDeviceValuesを受け取る出力先。 |
vtbl 18 HRESULT Cancel()
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_IPortableDeviceServiceCapabilities "{24DBD89D-413E-43E0-BD5B-197F3C56C886}" #usecom global IPortableDeviceServiceCapabilities IID_IPortableDeviceServiceCapabilities "{}" #comfunc global IPortableDeviceServiceCapabilities_GetSupportedMethods 3 sptr #comfunc global IPortableDeviceServiceCapabilities_GetSupportedMethodsByFormat 4 var,sptr #comfunc global IPortableDeviceServiceCapabilities_GetMethodAttributes 5 var,sptr #comfunc global IPortableDeviceServiceCapabilities_GetMethodParameterAttributes 6 var,var,sptr #comfunc global IPortableDeviceServiceCapabilities_GetSupportedFormats 7 sptr #comfunc global IPortableDeviceServiceCapabilities_GetFormatAttributes 8 var,sptr #comfunc global IPortableDeviceServiceCapabilities_GetSupportedFormatProperties 9 var,sptr #comfunc global IPortableDeviceServiceCapabilities_GetFormatPropertyAttributes 10 var,var,sptr #comfunc global IPortableDeviceServiceCapabilities_GetSupportedEvents 11 sptr #comfunc global IPortableDeviceServiceCapabilities_GetEventAttributes 12 var,sptr #comfunc global IPortableDeviceServiceCapabilities_GetEventParameterAttributes 13 var,var,sptr #comfunc global IPortableDeviceServiceCapabilities_GetInheritedServices 14 int,sptr #comfunc global IPortableDeviceServiceCapabilities_GetFormatRenderingProfiles 15 var,sptr #comfunc global IPortableDeviceServiceCapabilities_GetSupportedCommands 16 sptr #comfunc global IPortableDeviceServiceCapabilities_GetCommandOptions 17 var,sptr #comfunc global IPortableDeviceServiceCapabilities_Cancel 18 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_IPortableDeviceServiceCapabilities "{24DBD89D-413E-43E0-BD5B-197F3C56C886}" #usecom global IPortableDeviceServiceCapabilities IID_IPortableDeviceServiceCapabilities "{}" #comfunc global IPortableDeviceServiceCapabilities_GetSupportedMethods 3 sptr #comfunc global IPortableDeviceServiceCapabilities_GetSupportedMethodsByFormat 4 sptr,sptr #comfunc global IPortableDeviceServiceCapabilities_GetMethodAttributes 5 sptr,sptr #comfunc global IPortableDeviceServiceCapabilities_GetMethodParameterAttributes 6 sptr,sptr,sptr #comfunc global IPortableDeviceServiceCapabilities_GetSupportedFormats 7 sptr #comfunc global IPortableDeviceServiceCapabilities_GetFormatAttributes 8 sptr,sptr #comfunc global IPortableDeviceServiceCapabilities_GetSupportedFormatProperties 9 sptr,sptr #comfunc global IPortableDeviceServiceCapabilities_GetFormatPropertyAttributes 10 sptr,sptr,sptr #comfunc global IPortableDeviceServiceCapabilities_GetSupportedEvents 11 sptr #comfunc global IPortableDeviceServiceCapabilities_GetEventAttributes 12 sptr,sptr #comfunc global IPortableDeviceServiceCapabilities_GetEventParameterAttributes 13 sptr,sptr,sptr #comfunc global IPortableDeviceServiceCapabilities_GetInheritedServices 14 int,sptr #comfunc global IPortableDeviceServiceCapabilities_GetFormatRenderingProfiles 15 sptr,sptr #comfunc global IPortableDeviceServiceCapabilities_GetSupportedCommands 16 sptr #comfunc global IPortableDeviceServiceCapabilities_GetCommandOptions 17 sptr,sptr #comfunc global IPortableDeviceServiceCapabilities_Cancel 18 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。