SHPathPrepareForWriteA 関数 (shlobj_core.h)
パスが存在するかどうかを確認します。 これには、マップされたネットワーク ドライブの再マウント、取り出し可能なメディアの再挿入のプロンプト、パスの作成、メディアのフォーマットの要求、必要に応じて適切なユーザー インターフェイスの提供が含まれます。 メディアの読み取り/書き込みアクセス許可はチェックされません。
構文
SHSTDAPI SHPathPrepareForWriteA(
[in, optional] HWND hwnd,
[in, optional] IUnknown *punkEnableModless,
[in] LPCSTR pszPath,
DWORD dwFlags
);
パラメーター
[in, optional] hwnd
型: HWND
作成する必要があるユーザー インターフェイス ウィンドウに使用する親ウィンドウを指定するウィンドウへのハンドル。 NULL
[in, optional] punkEnableModless
型: IUnknown*
[in] pszPath
型: LPCTSTR
書き込みで有効として検証するパスを指定する、最大長MAX_PATHの null で終わる文字列へのポインター。 UNC またはファイル ドライブ パスを指定できます。
dwFlags
型: DWORD
動作オプションを決定するフラグ。 このパラメーターには、次の値の組み合わせを指定できます。
SHPPFW_NONE
新しいディレクトリは作成しないでください。
SHPPFW_DEFAULT
デフォルト。 ディレクトリを作成する必要がある場合は、ユーザーにメッセージを表示しないでください。 これは SHPPFW_DIRCREATEと同じです。 SHPPFW_ASKDIRCREATEで渡さないでください。
SHPPFW_DIRCREATE
ユーザーにメッセージを表示せずにディレクトリを作成します。 SHPPFW_ASKDIRCREATEで渡さないでください。
SHPPFW_ASKDIRCREATE
ディレクトリを作成する前に、ユーザーにプロンプトを表示します。 SHPPFW_DIRCREATEで渡さないでください。
SHPPFW_IGNOREFILENAME
pszPath の最後の項目はファイル名であるため、無視します。 たとえば、pszPath="
SHPPFW_NOWRITECHECK
現在実装されていません。
SHPPFW_MEDIACHECKONLY
Windows XP 以降。 ユーザーの取り消し以外のエラーが発生したときに表示される "アクセスできない" エラー メッセージ ボックスを非表示にし、hwnd
戻り値
型: HRESULT
パスが使用可能な場合はS_OKを返し、それ以外の場合はエラー コードを返します。 S_OKの戻り値は、メディアが書き込み可能であることを意味しないことに注意してください。これは、パスが使用可能であることを意味します。
備考
この関数の主な用途は、プログラムがパスを使用する前にパスを確認し、ユーザーにプロンプトを表示するために必要なユーザー インターフェイスを表示することです。 たとえば、ドライブ A: のディスクが見つからない場合、ディスクの挿入をユーザーに求めるウィンドウが表示されます。
手記
shlobj_core.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SHPathPrepareForWrite を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows 2000 Server [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | shlobj_core.h (Shlobj.h、Shlobj_core.h を含む) |
ライブラリ | Shell32.lib |
DLL | Shell32.dll (バージョン 5.0 以降) |