次の方法で共有


SHCreateDirectoryExA 関数 (shlobj_core.h)

[この機能は、Windows XP Service Pack 2 (SP2) と Windows Server 2003 から使用できます。 それ以降のバージョンの Windows では、変更または使用できない可能性があります。

オプションのセキュリティ属性を使用して、新しいファイル システム フォルダーを作成します。

構文

int SHCreateDirectoryExA(
  [in, optional] HWND                      hwnd,
  [in]           LPCSTR                    pszPath,
  [in, optional] const SECURITY_ATTRIBUTES *psa
);

パラメーター

[in, optional] hwnd

型: HWND

親ウィンドウへのハンドル。 ユーザー インターフェイスが表示されない場合は、このパラメーター NULL に設定できます。

[in] pszPath

型: LPCTSTR

ディレクトリの完全修飾パスを指定する null で終わる文字列へのポインター。 この文字列の最大長は 248 文字で、終端の null 文字も含まれます。

[in, optional] psa

型: const SECURITY_ATTRIBUTES*

ディレクトリのセキュリティ属性を持つ SECURITY_ATTRIBUTES 構造体へのポインター。 セキュリティ属性を設定する必要がない場合は、このパラメーター NULL に設定します。

戻り値

型: int

成功した場合は ERROR_SUCCESS を返します。 操作が失敗した場合は、他のエラー コード (ここに記載されているものも含む) を返すことができます。 特に一覧にない値については、「システム エラー コードの」を参照してください。

リターン コード 形容
ERROR_BAD_PATHNAME
pszPath パラメーターが相対パスに設定されました。
ERROR_FILENAME_EXCED_RANGE
pszPath 指すパスが長すぎます。
ERROR_PATH_NOT_FOUND
システムは pszPathによって指 パスを見つけることができません。 パスに無効なエントリが含まれている可能性があります。
ERROR_FILE_EXISTS
ディレクトリが存在します。
ERROR_ALREADY_EXISTS
ディレクトリが存在します。
ERROR_CANCELLED
ユーザーが操作を取り消しました。

備考

この関数は、pszPathによって完全修飾パスが与えられるファイル システム フォルダー 作成します。 中間フォルダーが 1 つ以上存在しない場合も作成されます。 SHCreateDirectoryEx 、ファイルが表示されていることを確認します。 表示されない場合は、次のいずれかが必要です。

  • hwnd 有効なウィンドウ ハンドルに設定されている場合は、ファイルにアクセスできない可能性があることをユーザーに警告するメッセージ ボックスが表示されます。 ユーザーが続行しないことを選択した場合、関数は ERROR_CANCELLEDを返します。
  • hwnd NULL設定されている場合、ユーザー インターフェイスは表示されません。関数は ERROR_CANCELLEDを返します。

手記

shlobj_core.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SHCreateDirectoryEx を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2003 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー shlobj_core.h (Shlobj.h、Shlobj_core.h を含む)
ライブラリ Shell32.lib
DLL Shell32.dll (バージョン 5.0 以降)

関連項目

SHCreateDirectory を する