open

open コマンドは、デバイスを初期化します。すべてのMCIデバイスはこのコマンドを認識します。

このコマンドを送信するには、 mciSendString 関数を使います。

open device openflag flag

引数

device

MCIデバイスまたはデバイスドライバの識別子を記述します。これには、デバイス名(レジストリまたは system.ini ファイルで与えられる)またはデバイスドライバのファイル名を指定することができます。デバイスドライバのファイル名を指定する場合には、 .DRV 拡張子を含めることはできますが、ファイルへのパスを含めるべきではありません。

openflag

何を初期化するのかを指定するフラグを記述します。以下に指定可能なパラメータと、パラメータを認識することのできるデバイスタイプを示します。

パラメータ 意味 デバイス
alias device_alias

指定されたデバイスにエイリアス(別名)を割り当てます。これを指定した場合には、その後のコマンドでこのエイリアスをデバイスIDとして使用しなければなりません。

cdaudio
digitalvideo
overlay
sequencer
vcr
videodisc
waveaudio
elementname

デバイスがオープンされたときにロードするデバイス要素(ファイル)の名前を指定します。

digitalvideo
buffer buffer_size

ウェーブ形式オーディオデバイスで使用されるバッファのサイズを秒単位で指定します。ウェーブ形式オーディオデバイスがインストールまたは構成されるときにデフォルトサイズが設定されます。一般的にはバッファサイズは4秒に設定されます。 MCIWAVE デバイスでは、最小サイズは2秒、最大サイズは9秒です。

waveaudio
parent hwnd

親ウィンドウのウィンドウハンドルを指定します。

digitalvideo
overlay
shareable

デバイスやファイルを共有可能として初期化します。“shareable”を指定しない場合は、後でデバイスやファイルをオープンし様とした場合に失敗します。

デバイスがすでにオープンされていて共有可能ではない場合、MCIは初期化エラーを返します。

MCISEQ シーケンサと MCIWAVE デバイスではファイルの共有はサポートされません。

cdaudio
digitalvideo
overlay
sequencer
vcr
videodisc
waveaudio
style child

ウィンドウを子ウィンドウスタイルで開きます。

digitalvideo
overlay
style overlapped

ウィンドウをオーバーラップウィンドウスタイルで開きます。

digitalvideo
overlay
style popup

ウィンドウをポップアップウィンドウスタイルで開きます。

digitalvideo
overlay
style style_type

ウィンドウスタイルを指定します。

digitalvideo
overlay
type device_type

ファイルのデバイスタイプを指定します。

cdaudio
digitalvideo
overlay
sequencer
vcr
videodisc
waveaudio
flag

何も記述しないか、“wait”、“notify”のいずれか、またはこの両方を記述します。

パラメータ 意味
wait

アプリケーションに制御を返す前に、要求された指示を完了するまで待機します。

notify

デバイスが作業を完了したときに、ウィンドウに MM_MCINOTIFY メッセージをポストします。

戻り値

成功すると 0 が返ります。

失敗するとエラーコードが返ります。

解説

MCIでは、CDオーディオデバイス形式のために“cdaudio”が、ビデオディスクデバイス形式のために“videodisc”が、MIDIシーケンサデバイス形式のために“sequencer”が、デジタルビデオデバイス形式のために“AVIVideo”が、ウェーブフォームオーディオデバイス形式のために“waveaudio”がそれぞれ用意されています。

“type”フラグの代わりに、MCIは、レジストリまたは SYSTEM.INI ファイルの [mci extension] セクションに記録されている拡張子に基づいてデバイスを選択することができます。

MCIはファイルインターフェースポインタまたはストリームインターフェースポインタを使用して AVI ファイルを開くことができます。これらを使用してファイルを開くには、 device パラメータのファイルまたはデバイス名の代わりに、アットマーク(@)に続けてインターフェースポインタを指定します。

デバイス名に“new”を指定することで、ウェーブ形式オーディオドライバは新しいウェーブ形式リソースを準備します。このとき、例えば、以下のようにすることで、デバイスにエイリアス(別名)“mysound”を割り当てて、6秒のバッファを指定することができます。

open new type waveaudio alias mysound buffer 6

デバイス名とファイル名を結合すると、“type”フラグの記述を排除することができます。MCIはこの結合を“デバイス名!要素名”の形式で認識します。感嘆符“!”の前後にスペースを入れて名いけません。例えば、以下のようにすることで“waveaudio”デバイスを使用して RIGHT.WAV ファイルを開くことができます。

open waveaudio!right.wav

MCIWAVE ドライバは非同期のウェーブ形式オーディオデバイスを必要とします。

対応情報

Windows 95 以降 / Windows NT 3.1 以降