Winapis中有ReadDirectoryChangesW。但是没有ReadDirectoryChangesA。
好奇。
为什么要特别对待?
有谁知道原因或历史?
答案 0 :(得分:2)
它在Win98 / 98 / SE / Me中从未存在过。从一开始就只有NT的许多(大多数?)函数(例如,Net * API)仅在“宽”版本中可用(尽管在Net *的情况下,它们省略了“W”后缀)
答案 1 :(得分:2)
内核内部使用的是unicode编码。带有W后缀的Win32 API通常会转换为内部NtXxx API。 Win32 API的A版本需要从ASCII转换为Unicode,调用W版本,然后将任何输出转换回ASCII。
在ReadDirectoryChangesW的情况下,最后一部分是不可能的,因为数据直接从文件系统读取到调用者的缓冲区,并且在 API返回后可能,因此无法实现ReadDirectoryChangesA