CheckNameLegalDOS8Dot3W 関数 (winbase.h)

指定した名前を使用して FAT ファイル システム上にファイルを作成できるかどうかを判断します。

構文

BOOL CheckNameLegalDOS8Dot3W(
  [in]            LPCWSTR lpName,
  [out, optional] LPSTR   lpOemName,
  [in]            DWORD   OemNameSize,
  [out, optional] PBOOL   pbNameContainsSpaces,
  [out]           PBOOL   pbNameLegal
);

パラメーター

[in] lpName

ファイル名 (8.3 形式)。

[out, optional] lpOemName

名前に対応する OEM 文字列を受け取るバッファーへのポインター。 このパラメーターは、NULL でもかまいません。

[in] OemNameSize

lpOemName バッファーのサイズ (文字単位)。 lpOemNameNULL の場合、このパラメーターは 0 (ゼロ) である必要があります。

[out, optional] pbNameContainsSpaces

名前にスペースが含まれているかどうかを示します。 このパラメーターは、NULL でもかまいません。 名前が有効な 8.3 FAT ファイル システム名でない場合、このパラメーターは未定義です。

[out] pbNameLegal

関数が成功した場合、このパラメーターは、現在の OEM コード ページがファイル名に適用されるときに、ファイル名が有効な 8.3 FAT ファイル名であるかどうかを示します。

戻り値

関数が成功すると、戻り値は 0 以外になります。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

この関数を使用すると、ファイル名を 16 ビット Windows ベースのアプリケーションまたは MS-DOS ベースのアプリケーションに渡すことができるかどうかを判断できます。

Windows 8 と Windows Server 2012 では、この関数は、次のテクノロジによってサポートされています。

テクノロジ サポートされています
サーバー メッセージ ブロック (SMB) 3.0 プロトコル はい
SMB 3.0 Transparent Failover (TFO) 備考を参照してください
スケールアウト ファイル共有 (SO) を使う SMB 3.0 備考を参照してください
クラスターの共有ボリューム ファイル システム (CsvFS) はい
Resilient File System (ReFS) はい
 

SMB 3.0 では、連続可用性機能を持つ共有の短い名前はサポートされていないため、関数は常にゼロ (失敗) を返します。

注意

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

要件

要件
サポートされている最小のクライアント Windows Vista、WINDOWS XP と SP1 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー winbase.h (Windows.h を含む)
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

File Management 関数

GetOEMCP