CDINFO 属性サンプル : CD オーディオ トラックの情報の再生および表示
更新 : 2007 年 11 月
CDINFO 属性サンプルは、メディア コントロール インターフェイス (MCI: Media Control Interface) API を使用して、現在 CD-ROM ドライブに挿入されている CD のオーディオ トラックの長さを取得します。また、トラック長を円グラフに表示します。さらに、CDINFO は ToolTip コモン コントロールを使用してツール ヒントを実装する方法も示します。このツール ヒントは、円グラフのカーソル位置に対応するオーディオ トラック長を表示します。
メモ : |
---|
このサンプルを含む一部のサンプルには、Visual C++ のウィザード、ライブラリ、およびコンパイラの変更が反映されていませんが、必要なタスクを実行する方法は示されています。 |
セキュリティに関するメモ : |
---|
このサンプル コードは概念を示す目的で提供されているものです。必ずしも最も安全なコーディング手法に従っているわけではないので、アプリケーションまたは Web サイトでは使用しないでください。Microsoft は、サンプル コードが意図しない目的で使用された場合に、付随的または間接的な損害について責任を負いません。 |
サンプルとそのインストール手順を取得するには
Visual Studio で、[ヘルプ] メニューの [サンプル] をクリックします。
詳細については、「サンプル ファイルの格納場所」を参照してください。
使用できるサンプルの最新バージョンと完全な一覧については、オンラインの Visual Studio 2008 Samples のページを参照してください。
サンプルは、コンピュータのハード ディスク上にもあります。既定では、サンプルおよび Readme ファイルは、\Program Files\Visual Studio 9.0\Samples\ の下のフォルダにコピーされます。Visual Studio Express Edition の場合、すべてのサンプルはオンライン上にあります。
サンプルのビルドと実行
このサンプルをビルドして実行するには
ソリューション ファイル CDInfo.sln を開きます。
[ビルド] メニューの [ビルド] をクリックします。
サンプルのビルド後に、Web ブラウザで CDInfo.htm を開き、画面に表示される指示に従います。
プロパティおよびメソッド
このコントロールは以下のメソッドを実装します。
Read 現在ドライブに挿入されている CD のトラック長情報を読み取り、円グラフに表示します。
Redraw 現在の CD に関する円グラフを再描画します。
Play 指定したトラック番号で CD の再生を開始します。コントロールは円グラフを回転させ、再生中のトラックを一番上に表示します。
使用できるプロパティは次のとおりです。
Tracks CD のトラック数です。
Length 指定したトラック番号の長さを秒数で示します。
TotalLength CD の全長を秒数で示します。
属性
このサンプルでは次の属性を使用します。
coclass、default、dispinterface、dual、emitidl、event_source、helpstring、id、implements_category、in、module、object、out、pointer_default、progid、propget、propput、registration_script、retval、threading、uuid、version、vi_progid
キーワード
このサンプルでは、次のキーワードを使用します。
BEGIN_COM_MAP; BEGIN_CONNECTION_POINT_MAP; BEGIN_MSG_MAP; BEGIN_OBJECT_MAP; BEGIN_PROPERTY_MAP; CComCoClass; CComControl; CComObjectRoot; COM_INTERFACE_ENTRY; COM_INTERFACE_ENTRY_IMPL; CONNECTION_POINT_ENTRY; CProxyCDEvents; CreateBrushIndirect; CreateRectRgn; DECLARE_REGISTRY_RESOURCEID; DeleteDC; DeleteObject; DrawCD; Ellipse; END_COM_MAP; END_CONNECTION_POINT_MAP; END_MSG_MAP; END_OBJECT_MAP; END_PROPERTY_MAP; IConnectionPointContainerImpl; IConnectionPointImpl; IDataObjectImpl; IDispatchImpl; IOleControlImpl; IOleInPlaceActiveObjectImpl; IOleInPlaceObjectWindowlessImpl; IOleLinkImpl; IOleObjectImpl; IPerPropertyBrowsingImpl; IPersistStorageImpl; IPersistStreamInitImpl; IPropertyNotifySinkCP; IProvideClassInfo2Impl; IQuickActivateImpl; IRunnableObjectImpl; IViewObjectExImpl; LineTo; mciSendCommand; MESSAGE_HANDLER; MoveToEx; OBJECT_ENTRY; ReduceRect; RelayEvent; SelectClipRgn; SelectObject; VariantInit; ZeroMemory