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

IWMPFolderMonitorServices

COM
IID788c8743-e57f-439d-a468-5bc77f2e59c6継承元IUnknown自前メソッド開始 vtbl3

メソッド 11

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

vtbl 3 HRESULT get_count(INT* plCount)
plCountINT*inout監視対象として登録されているフォルダの総数を受け取るINTポインタ。
vtbl 4 HRESULT item(INT lIndex, LPWSTR* pbstrFolder)
lIndexINTin取得したい監視フォルダの0起算インデックス。
pbstrFolderLPWSTR*inout指定インデックスのフォルダパスをBSTRで受け取るポインタ。SysFreeStringで解放する。
vtbl 5 HRESULT add(LPWSTR bstrFolder)
bstrFolderLPWSTRin監視対象に追加するフォルダのパスを表すBSTR。
vtbl 6 HRESULT remove(INT lIndex)
lIndexINTin監視対象から削除するフォルダの0起算インデックス。
vtbl 7 HRESULT get_scanState(WMPFolderScanState* pwmpfss)
pwmpfssWMPFolderScanState*inout現在のフォルダスキャン状態を示すWMPFolderScanState列挙値を受け取るポインタ。
vtbl 8 HRESULT get_currentFolder(LPWSTR* pbstrFolder)
pbstrFolderLPWSTR*inout現在スキャン中のフォルダパスをBSTRで受け取るポインタ。SysFreeStringで解放する。
vtbl 9 HRESULT get_scannedFilesCount(INT* plCount)
plCountINT*inout現在のスキャンで走査済みのファイル数を受け取るINTポインタ。
vtbl 10 HRESULT get_addedFilesCount(INT* plCount)
plCountINT*inoutスキャンによりライブラリへ追加されたファイル数を受け取るINTポインタ。
vtbl 11 HRESULT get_updateProgress(INT* plProgress)
plProgressINT*inout更新スキャンの進捗をパーセント(0〜100)で受け取るINTポインタ。
vtbl 12 HRESULT startScan()
vtbl 13 HRESULT stopScan()

HSP用 COM定義

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

出力引数:
#define global IID_IWMPFolderMonitorServices "{788C8743-E57F-439D-A468-5BC77F2E59C6}"
#usecom global IWMPFolderMonitorServices IID_IWMPFolderMonitorServices "{}"
#comfunc global IWMPFolderMonitorServices_get_count              3 var
#comfunc global IWMPFolderMonitorServices_item                   4 int,var
#comfunc global IWMPFolderMonitorServices_add                    5 wstr
#comfunc global IWMPFolderMonitorServices_remove                 6 int
#comfunc global IWMPFolderMonitorServices_get_scanState          7 var
#comfunc global IWMPFolderMonitorServices_get_currentFolder      8 var
#comfunc global IWMPFolderMonitorServices_get_scannedFilesCount  9 var
#comfunc global IWMPFolderMonitorServices_get_addedFilesCount    10 var
#comfunc global IWMPFolderMonitorServices_get_updateProgress     11 var
#comfunc global IWMPFolderMonitorServices_startScan              12
#comfunc global IWMPFolderMonitorServices_stopScan               13
; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。
; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。
; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。