Почему нет ReadDirectoryChangesA? - PullRequest
       2

Почему нет ReadDirectoryChangesA?

3 голосов
/ 24 октября 2011

В Winapis есть ReadDirectoryChangesW .Но нет ReadDirectoryChangesA.

Любопытно.
Почему это лечится специально?Есть кто-нибудь, кто знает причину или историю?

Ответы [ 2 ]

2 голосов
/ 26 октября 2011

Ядро внутри использует кодировку Unicode. API-интерфейсы Win32 с суффиксом W обычно переводятся во внутренние API-интерфейсы NtXxx. A-версия Win32 API должна преобразовать ASCII в Unicode, вызвать W-версию и затем преобразовать любой вывод обратно в ASCII.

В случае ReadDirectoryChangesW последняя часть невозможна, поскольку данные считываются непосредственно из файловой системы в буфер вызывающей стороны, и потенциально после возвращает API, поэтому невозможно реализовать ReadDirectoryChangesA.

2 голосов
/ 24 октября 2011

Такого никогда не было в Win98 / 98 / SE / Me. Многие (большинство?) Функций, которые были только для NT с самого начала (например, Net * API), доступны только в «широких» версиях (хотя в случае Net * они не указывали суффикс «W») .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...