次の方法で共有


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*

EnableModeless メソッドを実装する IOleInPlaceActiveObject オブジェクト を指定する、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=" C:\MyDir\MyFile.doc場合は、"C:\MyDir" のみを使用します。 pszPath ="C:\MyFirDir\MySecDir"場合は、"C:\MyFirDir" のみを使用します。

SHPPFW_NOWRITECHECK

現在実装されていません。

SHPPFW_MEDIACHECKONLY

Windows XP 以降。 ユーザーの取り消し以外のエラーが発生したときに表示される "アクセスできない" エラー メッセージ ボックスを非表示にし、hwnd NULLしません。

戻り値

型: 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 以降)