Помогите пжл перевести на делфи. С си плохо. А тут еще и векторы.
Код:
CString GetTokenUserSID(HANDLE hToken)
{
DWORD tmp = 0;
CString userName;
DWORD sidNameSize = 64;
std::vector<WCHAR> sidName;
sidName.resize(sidNameSize);
DWORD sidDomainSize = 64;
std::vector<WCHAR> sidDomain;
sidDomain.resize(sidNameSize);
DWORD userTokenSize = 1024;
std::vector<WCHAR> tokenUserBuf;
tokenUserBuf.resize(userTokenSize);
TOKEN_USER *userToken = (TOKEN_USER*)&tokenUserBuf.front();
if(GetTokenInformation(hToken, TokenUser, userToken, userTokenSize, &tmp))
{
WCHAR *pSidString = NULL;
if(ConvertSidToStringSid(userToken->User.Sid, &pSidString))
userName = pSidString;
if(NULL != pSidString)
LocalFree(pSidString);
}
else
_ASSERT(0);
return userName;
}