次の方法で共有


コマンド ショートカットとバリエーション

[MCI このページに関連付けられている機能は、従来の機能です。 これは、MediaPlayerに置き換えられます。 MediaPlayer は、Windows 10 および Windows 11 用に最適化されています。 新しいコードでは、可能な場合は、MCI ではなく、MediaPlayer 使用することを強くお勧めします。 従来の API を使用する既存のコードは、可能であれば新しい API を使用するように書き直すよう提案しています。

MCI コマンドを使用する場合は、いくつかのショートカットを使用できます。 これらのショートカットを使用すると、1 つの識別子を使用して、アプリケーションが開いているすべてのデバイスを参照したり、open (MCI_OPEN) コマンドを明示的に発行せずにデバイスを開いたりすることができます。

情報を返さないコマンドのデバイス識別子として "all" (MCI_ALL_DEVICE_ID) を指定できます。 "all" を指定すると、MCI は、現在のアプリケーションによって開かれたすべてのデバイスにコマンドを順番に送信します。

たとえば、"all" コマンド閉じるは、開いているすべてのデバイスを閉じ、が "all" コマンド 再生すると、アプリケーションによって開かれたすべてのデバイスの再生が開始されます。 MCI はコマンドを MCI デバイスに順次送信するため、最初のデバイスと最後のデバイスがコマンドを受信するまでの間隔があります。

"all" を使用すると、すべてのデバイスにコマンドをブロードキャストするのに便利な方法ですが、デバイスの同期には依存しないでください。メッセージ間のタイミングは異なる場合があります。

コマンドを発行し、開かっていないデバイスを指定すると、MCI はコマンドを実装する前にデバイスを開こうとします。 デバイスを自動的に開くには、次の規則が適用されます。

  • 自動オープン機能は、コマンド文字列インターフェイスでのみ機能します。
  • カスタム デバイス ドライバーに固有のコマンドでは、自動オープン機能が失敗します。
  • 自動的に開かれたデバイスは、デバイス名として "all" を使用するコマンドには応答しません。
  • 自動オープン機能では、アプリケーションで "type" フラグを指定することはできません。 デバイス名がない場合、MCI はレジストリ内のエントリからデバイス名を決定します。 特定のデバイスを使用するには、open コマンドのリファレンス 資料で説明されているように感嘆符を使用して、デバイス名とファイル名を組み合わせることができます。

アプリケーションで自動オープン機能を使用してデバイスを開く場合、アプリケーションは後続のすべてのオープン コマンドの戻り値を確認して、デバイスがまだ開かれていることを確認する必要があります。 MCI は、自動的に開くデバイスも自動的に閉じます。 MCI は、通常、次の状況でデバイスを閉じます。

  • コマンドが完了しました。
  • コマンドを中止します。
  • 後続のコマンドで通知を要求します。
  • MCI は障害を検出します。