Что на самом деле делает деструктор CAccessToken ATL? - PullRequest
0 голосов
/ 30 января 2012

CAccessToken довольно плохо документирован, его деструктор просто документирован как:

"Освобождает все выделенные ресурсы."

Я хотел бы знать, насколько это верно, например, если я прикреплю () к токену, полученному с помощью OpenProcessToken (), это будет для меня CloseHandle ()? Я предполагаю, что так и будет, поскольку у него нет метода Close (). Кроме того, что произойдет, если я вызову «LoadUserProfile ()», будет ли выгружен профиль, когда CAccessToken выйдет из области видимости? Я заметил, что у него нет метода "UnloadUserProfile ()" ....

1 Ответ

1 голос
/ 30 января 2012

CAccessToken исходный код есть в Visual Studio:

  • \ VC \ atlmfc \ включать \ atlsecurity.h
  • \ VC \ atlmfc \ включать \ atlsecurity.inl

Деструктор класса вызывает Clear и делает UnloadUserProfile и CloseHandle.

...