Win32 API 日本語リファレンス
ホームDevices.PortableDevices › IPortableDeviceServiceCapabilities

IPortableDeviceServiceCapabilities

COM
IID24dbd89d-413e-43e0-bd5b-197f3c56c886継承元IUnknown自前メソッド開始 vtbl3

メソッド 16

vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。

vtbl 3 HRESULT GetSupportedMethods(IPortableDevicePropVariantCollection** ppMethods)
ppMethodsIPortableDevicePropVariantCollection**outサービスがサポートするメソッドのGUID集合を受け取る出力先。
vtbl 4 HRESULT GetSupportedMethodsByFormat(GUID* Format, IPortableDevicePropVariantCollection** ppMethods)
FormatGUID*in対象とする形式のGUIDへのポインタ。
ppMethodsIPortableDevicePropVariantCollection**outその形式で利用可能なメソッドのGUID集合を受け取る出力先。
vtbl 5 HRESULT GetMethodAttributes(GUID* Method, IPortableDeviceValues** ppAttributes)
MethodGUID*in属性を照会するメソッドのGUIDへのポインタ。
ppAttributesIPortableDeviceValues**outメソッドの属性を格納したIPortableDeviceValuesを受け取る出力先。
vtbl 6 HRESULT GetMethodParameterAttributes(GUID* Method, PROPERTYKEY* Parameter, IPortableDeviceValues** ppAttributes)
MethodGUID*in対象メソッドのGUIDへのポインタ。
ParameterPROPERTYKEY*in属性を照会するパラメーターのキーを指すPROPERTYKEYへのポインタ。
ppAttributesIPortableDeviceValues**outパラメーターの属性を格納したIPortableDeviceValuesを受け取る出力先。
vtbl 7 HRESULT GetSupportedFormats(IPortableDevicePropVariantCollection** ppFormats)
ppFormatsIPortableDevicePropVariantCollection**outサービスがサポートする形式のGUID集合を受け取る出力先。
vtbl 8 HRESULT GetFormatAttributes(GUID* Format, IPortableDeviceValues** ppAttributes)
FormatGUID*in属性を照会する形式のGUIDへのポインタ。
ppAttributesIPortableDeviceValues**out形式の属性を格納したIPortableDeviceValuesを受け取る出力先。
vtbl 9 HRESULT GetSupportedFormatProperties(GUID* Format, IPortableDeviceKeyCollection** ppKeys)
FormatGUID*inプロパティを照会する形式のGUIDへのポインタ。
ppKeysIPortableDeviceKeyCollection**outその形式でサポートされるプロパティキー集合を受け取る出力先。
vtbl 10 HRESULT GetFormatPropertyAttributes(GUID* Format, PROPERTYKEY* Property, IPortableDeviceValues** ppAttributes)
FormatGUID*in対象とする形式のGUIDへのポインタ。
PropertyPROPERTYKEY*in属性を照会するプロパティのキーを指すPROPERTYKEYへのポインタ。
ppAttributesIPortableDeviceValues**outプロパティの属性を格納したIPortableDeviceValuesを受け取る出力先。
vtbl 11 HRESULT GetSupportedEvents(IPortableDevicePropVariantCollection** ppEvents)
ppEventsIPortableDevicePropVariantCollection**outサービスがサポートするイベントのGUID集合を受け取る出力先。
vtbl 12 HRESULT GetEventAttributes(GUID* Event, IPortableDeviceValues** ppAttributes)
EventGUID*in属性を照会するイベントのGUIDへのポインタ。
ppAttributesIPortableDeviceValues**outイベントの属性を格納したIPortableDeviceValuesを受け取る出力先。
vtbl 13 HRESULT GetEventParameterAttributes(GUID* Event, PROPERTYKEY* Parameter, IPortableDeviceValues** ppAttributes)
EventGUID*in対象イベントのGUIDへのポインタ。
ParameterPROPERTYKEY*in属性を照会するイベントパラメーターのキーを指すPROPERTYKEYへのポインタ。
ppAttributesIPortableDeviceValues**outイベントパラメーターの属性を格納したIPortableDeviceValuesを受け取る出力先。
vtbl 14 HRESULT GetInheritedServices(DWORD dwInheritanceType, IPortableDevicePropVariantCollection** ppServices)
dwInheritanceTypeDWORDin継承の種類を示すフラグ(WPD_SERVICE_INHERITANCE_IMPLEMENTATION等)。
ppServicesIPortableDevicePropVariantCollection**out継承元サービスのGUID集合を受け取る出力先。
vtbl 15 HRESULT GetFormatRenderingProfiles(GUID* Format, IPortableDeviceValuesCollection** ppRenderingProfiles)
FormatGUID*inレンダリングプロファイルを照会する形式のGUIDへのポインタ。
ppRenderingProfilesIPortableDeviceValuesCollection**outその形式のレンダリングプロファイル群を格納したIPortableDeviceValuesCollectionを受け取る出力先。
vtbl 16 HRESULT GetSupportedCommands(IPortableDeviceKeyCollection** ppCommands)
ppCommandsIPortableDeviceKeyCollection**outサービスがサポートするコマンドのキー集合を受け取る出力先。
vtbl 17 HRESULT GetCommandOptions(PROPERTYKEY* Command, IPortableDeviceValues** ppOptions)
CommandPROPERTYKEY*inオプションを照会するコマンドのキーを指すPROPERTYKEYへのポインタ。
ppOptionsIPortableDeviceValues**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 指定が可能。