SetNamedSecurityInfo определяется как получение LPTSTR
, а не LPCTSTR
.Теперь стандартный Win32 API, который принимает LPTSTR
, также имеет некоторый способ указания необходимой длины буфера.Иногда это явно указано в подписи, иногда документируется как MAX_PATH
или как-то иначе.Не так для SetNamedSecurityInfo
.
Если честно, я понятия не имею, почему SetNamedSecurityInfo
захочет записать в этот буфер, но, возможно, он пытается канонизировать путь на месте,Но тогда мне может понадобиться поддержка 32768 символов?