CheckNameLegalDOS8Dot3A 関数 (winbase.h)

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

構文

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

パラメーター

[in] lpName

ファイル名 (8.3 形式)。

[out, optional] lpOemName

Name に対応する 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 では、継続的な可用性機能を備えた共有の短い名前はサポートされていないため、関数は常に 0 (失敗) を返します。

注意

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

要件

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

関連項目

File Management 関数

GetOEMCP