Zaloguj się na nazwę użytkownika lub adres e-mail w systemie Windows 8 przy użyciu C ++ i WinAPI
W systemie Windows 7, aby pobrać nazwę zalogowanego użytkownika, mogę to zrobić:
LPTSTR pUserName = NULL;
DWORD dwcbSzUserName = 0;
//'dwSessID' = user session ID
if(WTSQuerySessionInformation(WTS_CURRENT_SERVER_HANDLE, dwSessID, WTSUserName, &pUserName, &dwcbSzUserName))
{
//Got user name in 'pUserName'
}
if(pUserName)
WTSFreeMemory(pUserName);
Ale w systemie Windows 8 zwraca skróconą nazwę, na przykład „john_000”, gdy rzeczywistą nazwą użytkownika jest „John A. Doe”.
W jaki sposób można pobrać nazwę zalogowanego użytkownika (i ewentualnie jego e-mail) w systemie Windows 8 za pomocą C ++ przy użyciu WinAPI, tak jak jest to pokazane na ekranie logowania?