SHCreateStreamOnFileEx 関数 (shlwapi.h)
ファイルを開くか作成し、そのファイルの読み取りまたは書き込みを行うストリームを取得します。
構文
LWSTDAPI SHCreateStreamOnFileEx(
[in] LPCWSTR pszFile,
[in] DWORD grfMode,
[in] DWORD dwAttributes,
[in] BOOL fCreate,
[in, optional] IStream *pstmTemplate,
[out] IStream **ppstm
);
パラメーター
[in] pszFile
種類: LPCWSTR
ファイル名を指定する null で終わる文字列へのポインター。
[in] grfMode
型: DWORD
ファイル アクセス モードの指定に使用される 1 つ以上の STGM 値と、ストリームを公開するオブジェクトの作成と削除方法。
[in] dwAttributes
型: DWORD
新しいファイルが作成される場合にファイル属性を指定する 1 つ以上のフラグ値。 使用可能な値の完全な一覧については、CreateFile 関数の dwFlagsAndAttributes パラメーターを参照してください。
[in] fCreate
種類: BOOL
ストリームの作成時に既存のファイルを処理する方法を grfMode と組み合わせて指定するのに役立つ BOOL 値。 詳細については、「解説」を参照してください。
[in, optional] pstmTemplate
種類: IStream*
予約済み。
[out] ppstm
種類: IStream**
ファイルに関連付けられているストリームの IStream インターフェイス ポインターを受け取ります。
戻り値
種類: HRESULT
この関数が成功すると、 S_OKが返されます。 そうでない場合は、HRESULT エラー コードを返します。
解説
SHCreateStreamOnFileEx 関数は、STGM フラグのセマンティクスを拡張し、CreateFile 関数の呼び出しと同じ効果を生成します。
grfMode パラメーターと fCreate パラメーターは連携して、既存のファイルに対する関数の動作を指定します。
grfMode | fCreate | ファイルが存在しますか? | 動作 |
---|---|---|---|
STGM_CREATE | 無視 | はい | ファイルが再作成されます。 |
STGM_CREATE | 無視 | いいえ | ファイルが作成されます。 |
STGM_FAILIFTHERE | FALSE | はい | ファイルが開きます。 |
STGM_FAILIFTHERE | FALSE | いいえ | 呼び出しは失敗します。 |
STGM_FAILIFTHERE | TRUE | はい | 呼び出しは失敗します。 |
STGM_FAILIFTHERE | TRUE | いいえ | ファイルが作成されます。 |
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | shlwapi.h |
Library | Shlwapi.lib |
[DLL] | Shlwapi.dll (バージョン 6.0 以降) |