IWMPCdromRip
COM公式ドキュメント
IWMPCdromRip インターフェイスは、オーディオ CD からトラックをコピー(リッピング)する処理を管理するためのメソッドを提供します。IWMPCdromRip インターフェイスを使用して CD をリッピングすることは、Windows Media Player のユーザーインターフェイスを使用して音楽をリッピングする場合と同じ効果があります。
メソッド 4
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
get_ripState メソッドは、リッピング処理の現在の状態を示す列挙値を取得します。
| pwmprs | WMPRipState* | inout | 現在の状態を示す WMPRipState 列挙体の値を受け取る変数へのポインター。 |
戻り値
このメソッドは HRESULT を返します。指定できる値には、次の表に示すものが含まれますが、これらに限定されません。
| 戻り値 | 説明 |
|---|---|
| メソッドは成功しました。 |
解説(Remarks)
Windows Media Player 10 Mobile: このメソッドはサポートされていません。
get_ripProgress メソッドは、CD リッピングの進行状況を完了率(パーセント)として取得します。
| plProgress | INT* | inout | 進行状況の値を受け取る long へのポインター。進行状況の値は 0 から 100 の範囲です。 |
戻り値
このメソッドは HRESULT を返します。指定できる値には、次の表に示すものが含まれますが、これらに限定されません。
| 戻り値 | 説明 |
|---|---|
| メソッドは成功しました。 |
解説(Remarks)
進行状況の値は、リッピング処理全体の完了率を表します。特定のトラックの進行状況を確認するには、IWMPMedia::getItemInfo を、属性名として RipProgress を指定して使用します。現在リッピング中のトラックのインデックスを確認するには、IWMPPlaylist::getItemInfo を、属性名として CurrentRipTrackIndex を指定して呼び出します。
Windows Media Player 10 Mobile: このメソッドはサポートされていません。
startRip メソッドは CD をリッピングします。
戻り値
このメソッドは HRESULT を返します。指定できる値には、次の表に示すものが含まれますが、これらに限定されません。
| 戻り値 | 説明 |
|---|---|
| メソッドは成功しました。 |
解説(Remarks)
Windows Media Player 10 Mobile: このメソッドはサポートされていません。
IWMPCdromRip インターフェイスを使用して CD をリッピングすることは、Windows Media Player のユーザーインターフェイスを使用して音楽をリッピングする場合と同じ効果があります。リッピングされたコンテンツは、ユーザーの設定に従って自動的にライブラリに追加されます。CD リッピングに関するユーザー設定の詳細については、Windows Media Player ヘルプの「CD から音楽をリッピングする」を参照してください。
stopRip メソッドは CD リッピング処理を停止します。
戻り値
このメソッドは HRESULT を返します。指定できる値には、次の表に示すものが含まれますが、これらに限定されません。
| 戻り値 | 説明 |
|---|---|
| メソッドは成功しました。 |
解説(Remarks)
Windows Media Player 10 Mobile: このメソッドはサポートされていません。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
#define global IID_IWMPCdromRip "{56E2294F-69ED-4629-A869-AEA72C0DCC2C}" #usecom global IWMPCdromRip IID_IWMPCdromRip "{}" #comfunc global IWMPCdromRip_get_ripState 3 var #comfunc global IWMPCdromRip_get_ripProgress 4 var #comfunc global IWMPCdromRip_startRip 5 #comfunc global IWMPCdromRip_stopRip 6 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。#define global IID_IWMPCdromRip "{56E2294F-69ED-4629-A869-AEA72C0DCC2C}" #usecom global IWMPCdromRip IID_IWMPCdromRip "{}" #comfunc global IWMPCdromRip_get_ripState 3 sptr #comfunc global IWMPCdromRip_get_ripProgress 4 sptr #comfunc global IWMPCdromRip_startRip 5 #comfunc global IWMPCdromRip_stopRip 6 ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。