Basic サービス

[このページ マルチメディア ファイル I/Oに関連付けられている機能は、従来の機能です。 これは、ソースリーダーに置き換わりました。 ソース リーダー は、Windows 10 および Windows 11 用に最適化されています。 可能な場合は、マルチメディア ファイル I/O ではなく、新しいコード ソース リーダー使用することを強くお勧めします。 従来の API を使用する既存のコードは、可能であれば新しい API を使用するように書き直すよう提案しています。

基本的な I/O サービスの使用は、C ランタイム ライブラリのランタイム ファイル I/O サービスの使用と似ています。 ファイルは、読み取りまたは書き込みを行う前に開く必要があります。 読み取りまたは書き込みの後、ファイルを閉じる必要があります。 開いているファイル内の現在の読み取りまたは書き込みの場所を変更することもできます。

ファイルに対する I/O 操作を開始する前に、mmioOpen 関数を使用してファイルを開く必要があります。 この関数は、HMMIO 型のファイル ハンドルを返します。 このファイル ハンドルを使用すると、他のファイル I/O 関数を呼び出すときに開いているファイルを識別できます。

手記

HMMIO ファイル ハンドルは、標準のファイル ハンドルではありません。 Win32 または C ランタイム ファイル I/O 関数 HMMIO ファイル ハンドルを使用しないでください。

 

mmioOpen を使用してファイルを開く場合は、フラグを使用して、読み取り、書き込み、またはその両方に対して開くかどうかを指定します。 ファイルの作成または削除を可能にするフラグを指定することもできます。 mmioClose 関数を使用して、ファイルの読み取りまたは書き込みが完了したときにファイルを閉じます。

mmioReadmmioWrite 関数を使用して、ファイルの読み取りと書き込みを行うことができます。 次の読み取りまたは書き込み操作は、ファイル内の現在のファイル位置またはファイル ポインターで行われます。 現在のファイル位置は、ファイルが読み取りまたは書き込まれるたびに進みます。

mmioSeek 関数を使用して、現在のファイルの位置を変更することもできます。 ファイル内の有効な場所を指定する必要があります。 ファイルの末尾を越えるなど、無効な場所を指定した場合、mmioSeek はエラーを返さない可能性がありますが、後続の I/O 操作は失敗する可能性があります。

基本的なファイル I/O 以外の操作に、mmioOpen 関数で使用できるフラグがあります。 たとえば、MMIOINFO 構造体を指定すると、メモリ ファイルを開いたり、カスタム I/O プロシージャを指定したり、バッファー I/O 用のバッファーを指定したりできます。