PathMakeUniqueName 関数 (shlobj_core.h)

テンプレートから一意のパス名を作成します。

構文

BOOL PathMakeUniqueName(
  [out]          PWSTR  pszUniqueName,
                 UINT   cchMax,
  [in]           PCWSTR pszTemplate,
  [in, optional] PCWSTR pszLongPlate,
  [in, optional] PCWSTR pszDir
);

パラメーター

[out] pszUniqueName

種類: PWSTR

一意のパス名を含む null で終わる Unicode 文字列を受け取るバッファー。 長さは少なくともMAX_PATH文字にする必要があります。

cchMax

型: UINT

pszUniqueName が指すバッファー内の文字数。

[in] pszTemplate

種類: PCWSTR

一意の名前を作成するために使用されるテンプレートを含む null で終わる Unicode 文字列。 このテンプレートは、8.3 形式のファイル名を必要とするドライブに使用されます。 この文字列は、終端の null 文字を含め、長さがMAX_PATH文字以下である必要があります。

[in, optional] pszLongPlate

種類: PCWSTR

一意の名前を作成するために使用されるテンプレートを含む null で終わる Unicode 文字列。 このテンプレートは、長いファイル名をサポートするドライブに使用されます。 この文字列は、終端の null 文字を含め、長さがMAX_PATH文字以下である必要があります。

[in, optional] pszDir

種類: PCWSTR

新しいファイルが存在するディレクトリを含む null で終わる文字列。 この文字列は、終端の null 文字を含め、長さがMAX_PATH文字以下である必要があります。

戻り値

種類: BOOL

成功した場合は TRUE を 返します。それ以外の場合は FALSE

解説

この関数は、 pszTemplate で指定されたテンプレートに基づいて、8.3 形式を必要とするドライブの場合は新しい一意のファイル名を生成し、長いファイル名をサポートするドライブには pszLongPlate を生成します。 たとえば、 pszLongPlate に "My New Filename" を指定した場合、 PathMakeUniqueName は "My New Filename (1)"、"My New Filename (2)" などの名前を返します。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー shlobj_core.h (Shlobj.h を含む)
Library Shell32.lib
[DLL] Shell32.dll (バージョン 5.0 以降)