AVIFileOpenA 関数 (vfw.h)
AVIFileOpen 関数は、AVI ファイルを開き、アクセスに使用するファイル インターフェイスのアドレスを返します。 AVIFile ライブラリは、ファイルが開かれた回数のカウントを保持しますが、リリースされた回数は保持しません。 AVIFileRelease 関数を使用してファイルを解放し、カウントを減らします。
構文
HRESULT AVIFileOpenA(
PAVIFILE *ppfile,
LPCSTR szFile,
UINT uMode,
LPCLSID lpHandler
);
パラメーター
ppfile
新しい IAVIFile インターフェイス ポインターを受け取るバッファーへのポインター。
szFile
開くファイルの名前を含む Null で終わる文字列。
uMode
ファイルを開くときに使用するアクセス モード。 既定のアクセス モードはOF_READです。 AVIFileOpen では、次のアクセス モードを指定できます。
値 | 意味 |
---|---|
OF_CREATE | 新しいファイルを 1 つ作成します。 ファイルが既に存在する場合は、長さが 0 に切り捨てられます。 |
OF_PARSE | インデックスの作成など、時間のかかる操作をスキップします。 このフラグは、可能な限り迅速に関数を返す場合に設定します。たとえば、ファイル プロパティに対してクエリを実行するが、ファイルを読み取らない場合などです。 |
OF_READ | 読み取り用にファイルを開きます。 |
OF_READWRITE | 読み取りと書き込みのためにファイルを開きます。 |
OF_SHARE_DENY_NONE | ファイルを最終的に開かないで開きます。 他のプロセスでは、読み取りまたは書き込みアクセス権を持つファイルを開くことができます。 別のプロセスが互換モードでファイルを開いた場合、AVIFileOpen は失敗します。 |
OF_SHARE_DENY_READ | ファイルを最終的に開かないで開きます。 他のプロセスでは、書き込みアクセス権を持つファイルを開くことができます。 別のプロセスが互換モードでファイルを開いた場合、またはファイルに対する読み取りアクセス権を持っている場合、AVIFileOpen は失敗します。 |
OF_SHARE_DENY_WRITE | ファイルを最終的に開かないで開きます。 他のプロセスでは、読み取りアクセス権を持つファイルを開くことができます。 別のプロセスが互換モードでファイルを開いた場合、またはファイルへの書き込みアクセス権を持っている場合、AVIFileOpen は失敗します。 |
OF_SHARE_EXCLUSIVE | ファイルを開き、そのファイルへのアクセスを他のプロセスで拒否します。 他のプロセスがファイルを開いた場合、AVIFileOpen は失敗します。 |
OF_WRITE | ファイルを書き込み用に開きます。 |
lpHandler
使用する標準ハンドラーまたはカスタム ハンドラーのクラス識別子へのポインター。 値が NULL の場合、システムは、ファイル拡張子またはファイルで指定された RIFF 型に基づいてレジストリからハンドラーを選択します。
戻り値
成功した場合は 0 を返し、それ以外の場合はエラーを返します。 考えられるエラー値は次のとおりです。
リターン コード | 説明 |
---|---|
|
ファイルを読み取れませんでした。ファイルが破損しているか、認識できない形式であることを示しています。 |
|
メモリ不足のため、ファイルを開くことができませんでした。 |
|
ファイルの読み取り中にディスク エラーが発生しました。 |
|
ファイルを開くときにディスク エラーが発生しました。 |
|
レジストリによると、 AVIFileOpen で指定されたファイルの種類には、それを処理するハンドラーがありません。 |
注釈
注意
vfw.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして AVIFileOpen を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | vfw.h |
Library | Vfw32.lib |
[DLL] | Avifil32.dll |