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

IXFeedItem

COM
IIDe757b2f5-e73e-434e-a1bf-2bd7c3e60fcb継承元IUnknown自前メソッド開始 vtbl3

メソッド 17

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

vtbl 3 HRESULT Xml(FEEDS_XML_INCLUDE_FLAGS fxif, IStream** pps)
fxifFEEDS_XML_INCLUDE_FLAGSin出力XMLに含める追加情報を指定するFEEDS_XML_INCLUDE_FLAGSビットフラグ。
ppsIStream**out生成された項目XMLを受け取るIStreamの出力ポインタ。
vtbl 4 HRESULT Title(LPWSTR* ppszTitle)
ppszTitleLPWSTR*out項目のタイトルを受け取る文字列ポインタ。CoTaskMemFreeで解放する。
vtbl 5 HRESULT Link(LPWSTR* ppszUrl)
ppszUrlLPWSTR*out項目本文へのリンクURLを受け取る文字列ポインタ。
vtbl 6 HRESULT Guid(LPWSTR* ppszGuid)
ppszGuidLPWSTR*out項目の一意識別子(RSSのguid要素)を受け取る文字列ポインタ。
vtbl 7 HRESULT Description(LPWSTR* ppszDescription)
ppszDescriptionLPWSTR*out項目の説明文(本文)を受け取る文字列ポインタ。CoTaskMemFreeで解放する。
vtbl 8 HRESULT PubDate(SYSTEMTIME* pstPubDate)
pstPubDateSYSTEMTIME*out項目の公開日時(pubDate)を受け取るSYSTEMTIMEポインタ。
vtbl 9 HRESULT Comments(LPWSTR* ppszUrl)
ppszUrlLPWSTR*out項目へのコメントページURLを受け取る文字列ポインタ。
vtbl 10 HRESULT Author(LPWSTR* ppszAuthor)
ppszAuthorLPWSTR*out項目の著者情報を受け取る文字列ポインタ。CoTaskMemFreeで解放する。
vtbl 11 HRESULT Enclosure(GUID* riid, void** ppv)
riidGUID*in取得するインターフェイスの識別子(IID)を指すGUIDポインタ。
ppvvoid**out項目のエンクロージャを表すインターフェイスを受け取る出力ポインタ。
vtbl 12 HRESULT IsRead(BOOL* pbIsRead)
pbIsReadBOOL*outこの項目が既読かどうかをBOOLで受け取るポインタ。
vtbl 13 HRESULT SetIsRead(BOOL bIsRead)
bIsReadBOOLin項目を既読にするかを指定するBOOL。TRUEで既読。
vtbl 14 HRESULT LocalId(DWORD* puiId)
puiIdDWORD*outこの項目のローカルID(DWORD)を受け取るポインタ。
vtbl 15 HRESULT Parent(GUID* riid, void** ppv)
riidGUID*in取得するインターフェイスの識別子(IID)を指すGUIDポインタ。
ppvvoid**outこの項目が属する親フィードのインターフェイスを受け取る出力ポインタ。
vtbl 16 HRESULT Delete()
vtbl 17 HRESULT DownloadUrl(LPWSTR* ppszUrl)
ppszUrlLPWSTR*outこの項目のダウンロード元URLを受け取る文字列ポインタ。
vtbl 18 HRESULT LastDownloadTime(SYSTEMTIME* pstLastDownloadTime)
pstLastDownloadTimeSYSTEMTIME*outこの項目が最後にダウンロードされた日時を受け取るSYSTEMTIMEポインタ(UTC)。
vtbl 19 HRESULT Modified(SYSTEMTIME* pstModifiedTime)
pstModifiedTimeSYSTEMTIME*outこの項目が最後に変更された日時を受け取るSYSTEMTIMEポインタ。

HSP用 COM定義

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

出力引数:
#define global IID_IXFeedItem "{E757B2F5-E73E-434E-A1BF-2BD7C3E60FCB}"
#usecom global IXFeedItem IID_IXFeedItem "{}"
#comfunc global IXFeedItem_Xml               3 int,sptr
#comfunc global IXFeedItem_Title             4 var
#comfunc global IXFeedItem_Link              5 var
#comfunc global IXFeedItem_Guid              6 var
#comfunc global IXFeedItem_Description       7 var
#comfunc global IXFeedItem_PubDate           8 var
#comfunc global IXFeedItem_Comments          9 var
#comfunc global IXFeedItem_Author            10 var
#comfunc global IXFeedItem_Enclosure         11 var,sptr
#comfunc global IXFeedItem_IsRead            12 var
#comfunc global IXFeedItem_SetIsRead         13 int
#comfunc global IXFeedItem_LocalId           14 var
#comfunc global IXFeedItem_Parent            15 var,sptr
#comfunc global IXFeedItem_Delete            16
#comfunc global IXFeedItem_DownloadUrl       17 var
#comfunc global IXFeedItem_LastDownloadTime  18 var
#comfunc global IXFeedItem_Modified          19 var
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。
; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。