Win32 API 日本語リファレンス
ホームMedia.MediaPlayer › IFeed

IFeed

COMIDispatch (デュアル)
IDispatch を実装(デュアルインターフェース)。HSP では comobj 経由でメソッド名による遅延バインド呼び出しができます(vtableインデックス不要)。
IIDf7f915d8-2ede-42bc-98e7-a5d05063a757継承元IDispatch呼び出し名前(IDispatch) または vtbl自前メソッド開始 vtbl7

メソッド 44

vtbl = vtable インデックス(0始まり)。IDispatch 実装のため HSP ではメソッド名でも呼べます(上記)。低レベルの index 呼び出し用に vtbl も掲載。0〜2 は IUnknown。

vtbl 7 HRESULT Xml(INT count, FEEDS_XML_SORT_PROPERTY sortProperty, FEEDS_XML_SORT_ORDER sortOrder, FEEDS_XML_FILTER_FLAGS filterFlags, FEEDS_XML_INCLUDE_FLAGS includeFlags, LPWSTR* xml)
countINTin出力するアイテム数の上限。0で全件指定。
sortPropertyFEEDS_XML_SORT_PROPERTYin並べ替えの基準プロパティを示すFEEDS_XML_SORT_PROPERTY値。
sortOrderFEEDS_XML_SORT_ORDERin昇順/降順を示すFEEDS_XML_SORT_ORDER値。
filterFlagsFEEDS_XML_FILTER_FLAGSin未読のみ等の絞り込みを示すFEEDS_XML_FILTER_FLAGSビットフラグ。
includeFlagsFEEDS_XML_INCLUDE_FLAGSinXMLに含める情報を示すFEEDS_XML_INCLUDE_FLAGSビットフラグ。
xmlLPWSTR*out生成されたフィードXML文字列を受け取る出力先。
vtbl 8 HRESULT get_Name(LPWSTR* name)
nameLPWSTR*outフィードの表示名を受け取る出力先。
vtbl 9 HRESULT Rename(LPWSTR name)
nameLPWSTRinフィードに付け直す新しい名前を指定する。
vtbl 10 HRESULT get_Url(LPWSTR* feedUrl)
feedUrlLPWSTR*outフィードの購読URLを受け取る出力先。
vtbl 11 HRESULT put_Url(LPWSTR feedUrl)
feedUrlLPWSTRinフィードに設定する新しい購読URL。
vtbl 12 HRESULT get_LocalId(LPWSTR* feedGuid)
feedGuidLPWSTR*outフィードを一意に識別するローカルGUID文字列を受け取る出力先。
vtbl 13 HRESULT get_Path(LPWSTR* path)
pathLPWSTR*outルートからのフィードパスを受け取る出力先。
vtbl 14 HRESULT Move(LPWSTR newParentPath)
newParentPathLPWSTRin移動先の親フォルダのパスを指定する。
vtbl 15 HRESULT get_Parent(IDispatch** disp)
dispIDispatch**out親フォルダのIDispatchを受け取る出力先。
vtbl 16 HRESULT get_LastWriteTime(DOUBLE* lastWrite)
lastWriteDOUBLE*out最終更新日時をVARIANT日付(DATE)形式で受け取る出力先。
vtbl 17 HRESULT Delete()
vtbl 18 HRESULT Download()
vtbl 19 HRESULT AsyncDownload()
vtbl 20 HRESULT CancelAsyncDownload()
vtbl 21 HRESULT get_SyncSetting(FEEDS_SYNC_SETTING* syncSetting)
syncSettingFEEDS_SYNC_SETTING*out同期間隔の設定種別を示すFEEDS_SYNC_SETTING値を受け取る出力先。
vtbl 22 HRESULT put_SyncSetting(FEEDS_SYNC_SETTING syncSetting)
syncSettingFEEDS_SYNC_SETTINGin設定する同期種別を示すFEEDS_SYNC_SETTING値。
vtbl 23 HRESULT get_Interval(INT* minutes)
minutesINT*outカスタム同期間隔の分数を受け取る出力先。
vtbl 24 HRESULT put_Interval(INT minutes)
minutesINTin設定するカスタム同期間隔の分数。
vtbl 25 HRESULT get_LastDownloadTime(DOUBLE* lastDownload)
lastDownloadDOUBLE*out最終ダウンロード日時をVARIANT日付(DATE)形式で受け取る出力先。
vtbl 26 HRESULT get_LocalEnclosurePath(LPWSTR* path)
pathLPWSTR*outエンクロージャ保存先のローカルフォルダパスを受け取る出力先。
vtbl 27 HRESULT get_Items(IDispatch** disp)
dispIDispatch**outフィード内アイテムのコレクション(IFeedsEnum)を受け取る出力先。
vtbl 28 HRESULT GetItem(INT itemId, IDispatch** disp)
itemIdINTin取得するアイテムのローカルID。
dispIDispatch**out該当アイテムのIDispatchを受け取る出力先。
vtbl 29 HRESULT get_Title(LPWSTR* title)
titleLPWSTR*outフィードのチャンネルタイトルを受け取る出力先。
vtbl 30 HRESULT get_Description(LPWSTR* description)
descriptionLPWSTR*outフィードの説明文を受け取る出力先。
vtbl 31 HRESULT get_Link(LPWSTR* homePage)
homePageLPWSTR*outフィード発行元のホームページURLを受け取る出力先。
vtbl 32 HRESULT get_Image(LPWSTR* imageUrl)
imageUrlLPWSTR*outフィードに関連付けられた画像のURLを受け取る出力先。
vtbl 33 HRESULT get_LastBuildDate(DOUBLE* lastBuildDate)
lastBuildDateDOUBLE*outフィードの最終生成日時をVARIANT日付(DATE)形式で受け取る出力先。
vtbl 34 HRESULT get_PubDate(DOUBLE* lastPopulateDate)
lastPopulateDateDOUBLE*outフィードの公開日時をVARIANT日付(DATE)形式で受け取る出力先。
vtbl 35 HRESULT get_Ttl(INT* ttl)
ttlINT*outキャッシュ有効期間(分)を示すTTLを受け取る出力先。
vtbl 36 HRESULT get_Language(LPWSTR* language)
languageLPWSTR*outフィードの言語コードを受け取る出力先。
vtbl 37 HRESULT get_Copyright(LPWSTR* copyright)
copyrightLPWSTR*outフィードの著作権表記を受け取る出力先。
vtbl 38 HRESULT get_MaxItemCount(INT* count)
countINT*out保持するアイテム数の上限を受け取る出力先。
vtbl 39 HRESULT put_MaxItemCount(INT count)
countINTin設定する保持アイテム数の上限。
vtbl 40 HRESULT get_DownloadEnclosuresAutomatically(VARIANT_BOOL* downloadEnclosuresAutomatically)
downloadEnclosuresAutomaticallyVARIANT_BOOL*outエンクロージャを自動取得するか否かをVARIANT_BOOLで受け取る出力先。
vtbl 41 HRESULT put_DownloadEnclosuresAutomatically(VARIANT_BOOL downloadEnclosuresAutomatically)
downloadEnclosuresAutomaticallyVARIANT_BOOLinエンクロージャ自動取得の有効可否を示すVARIANT_BOOL。
vtbl 42 HRESULT get_DownloadStatus(FEEDS_DOWNLOAD_STATUS* status)
statusFEEDS_DOWNLOAD_STATUS*out現在のダウンロード状態を示すFEEDS_DOWNLOAD_STATUS値を受け取る出力先。
vtbl 43 HRESULT get_LastDownloadError(FEEDS_DOWNLOAD_ERROR* error)
errorFEEDS_DOWNLOAD_ERROR*out直近ダウンロードのエラー状態を示すFEEDS_DOWNLOAD_ERROR値を受け取る出力先。
vtbl 44 HRESULT Merge(LPWSTR feedXml, LPWSTR feedUrl)
feedXmlLPWSTRinマージ元となるフィードのXML文字列。
feedUrlLPWSTRinXMLに対応するフィードのURL。
vtbl 45 HRESULT get_DownloadUrl(LPWSTR* feedUrl)
feedUrlLPWSTR*out実際のダウンロードに用いられるURLを受け取る出力先。
vtbl 46 HRESULT get_IsList(VARIANT_BOOL* isList)
isListVARIANT_BOOL*outフィードリスト(OPML等)か否かをVARIANT_BOOLで受け取る出力先。
vtbl 47 HRESULT MarkAllItemsRead()
vtbl 48 HRESULT GetWatcher(FEEDS_EVENTS_SCOPE scope, FEEDS_EVENTS_MASK mask, IDispatch** disp)
scopeFEEDS_EVENTS_SCOPEin監視範囲を示すFEEDS_EVENTS_SCOPE列挙値。
maskFEEDS_EVENTS_MASKin監視対象イベント種別を示すFEEDS_EVENTS_MASKビットマスク。
dispIDispatch**out生成された変更監視オブジェクトのIDispatchを受け取る出力先。
vtbl 49 HRESULT get_UnreadItemCount(INT* count)
countINT*outこのフィード内の未読アイテム数を受け取る出力先。
vtbl 50 HRESULT get_ItemCount(INT* count)
countINT*outこのフィード内のアイテム総数を受け取る出力先。

HSP用 COM定義

#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"

出力引数:
#define global IID_IFeed "{F7F915D8-2EDE-42BC-98E7-A5D05063A757}"
#usecom global IFeed IID_IFeed "{}"
#comfunc global IFeed_Xml                                  7 int,int,int,int,int,var
#comfunc global IFeed_get_Name                             8 var
#comfunc global IFeed_Rename                               9 wstr
#comfunc global IFeed_get_Url                              10 var
#comfunc global IFeed_put_Url                              11 wstr
#comfunc global IFeed_get_LocalId                          12 var
#comfunc global IFeed_get_Path                             13 var
#comfunc global IFeed_Move                                 14 wstr
#comfunc global IFeed_get_Parent                           15 sptr
#comfunc global IFeed_get_LastWriteTime                    16 var
#comfunc global IFeed_Delete                               17
#comfunc global IFeed_Download                             18
#comfunc global IFeed_AsyncDownload                        19
#comfunc global IFeed_CancelAsyncDownload                  20
#comfunc global IFeed_get_SyncSetting                      21 var
#comfunc global IFeed_put_SyncSetting                      22 int
#comfunc global IFeed_get_Interval                         23 var
#comfunc global IFeed_put_Interval                         24 int
#comfunc global IFeed_get_LastDownloadTime                 25 var
#comfunc global IFeed_get_LocalEnclosurePath               26 var
#comfunc global IFeed_get_Items                            27 sptr
#comfunc global IFeed_GetItem                              28 int,sptr
#comfunc global IFeed_get_Title                            29 var
#comfunc global IFeed_get_Description                      30 var
#comfunc global IFeed_get_Link                             31 var
#comfunc global IFeed_get_Image                            32 var
#comfunc global IFeed_get_LastBuildDate                    33 var
#comfunc global IFeed_get_PubDate                          34 var
#comfunc global IFeed_get_Ttl                              35 var
#comfunc global IFeed_get_Language                         36 var
#comfunc global IFeed_get_Copyright                        37 var
#comfunc global IFeed_get_MaxItemCount                     38 var
#comfunc global IFeed_put_MaxItemCount                     39 int
#comfunc global IFeed_get_DownloadEnclosuresAutomatically  40 var
#comfunc global IFeed_put_DownloadEnclosuresAutomatically  41 int
#comfunc global IFeed_get_DownloadStatus                   42 var
#comfunc global IFeed_get_LastDownloadError                43 var
#comfunc global IFeed_Merge                                44 wstr,wstr
#comfunc global IFeed_get_DownloadUrl                      45 var
#comfunc global IFeed_get_IsList                           46 var
#comfunc global IFeed_MarkAllItemsRead                     47
#comfunc global IFeed_GetWatcher                           48 int,int,sptr
#comfunc global IFeed_get_UnreadItemCount                  49 var
#comfunc global IFeed_get_ItemCount                        50 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。
; ※IDispatch 実装。HSP では comobj 経由でメソッド名による呼び出しも可能(vtbl 不要)。