Функция 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
Указатель на буфер, который получает строку OEM, соответствующую Name. Этот параметр может быть NULL.
[in] OemNameSize
Размер буфера lpOemName в символах. Если lpOemNameNULL, этот параметр должен иметь значение 0 (ноль).
[out, optional] pbNameContainsSpaces
Указывает, содержит ли имя пробелы. Этот параметр может быть NULL. Если имя не является допустимым именем файловой системы 8.3 FAT, этот параметр не определен.
[out] pbNameLegal
Если функция выполнена успешно, этот параметр указывает, является ли имя файла допустимым именем 8.3 FAT при применении текущей кодовой страницы OEM к имени файла.
Возвращаемое значение
Если функция выполнена успешно, возвращаемое значение ненулевое.
Если функция завершается ошибкой, возвращаемое значение равно 0 (ноль). Чтобы получить расширенные сведения об ошибке, вызовите GetLastError.
Замечания
Эту функцию можно использовать для определения того, можно ли передать имя файла в 16-разрядное приложение windows или приложение на основе MS-DOS.
В Windows 8 и Windows Server 2012 эта функция поддерживается следующими технологиями.
Технологии | Поддержанный |
---|---|
Протокол SMB 3.0 | Да |
Отработка отказа SMB 3.0 (TFO) | Просмотр примечаний |
SMB 3.0 с масштабируемыми общими папками (SO) | Просмотр примечаний |
Файловая система общего тома кластера (CSVFS) | Да |
Отказоустойчивая файловая система (ReFS) | Да |
Обратите внимание, что SMB 3.0 не поддерживает короткие имена для общих папок с возможностью непрерывной доступности, поэтому функция всегда возвращает ноль (сбой).
Заметка
Заголовок winbase.h определяет CheckNameLegalDOS8Dot3 как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows Vista, Windows XP с пакетом обновления 1 (SP1) [только классические приложения] |
минимальный поддерживаемый сервер | Windows Server 2003 [только классические приложения] |
целевая платформа | Виндоус |
заголовка | winbase.h (включая Windows.h) |
библиотеки |
Kernel32.lib |
DLL | Kernel32.dll |