Console application も GUI application? のつづき
HWINSTA hWinSta = GetProcessWindowStation();
if (hWinSta)
{
DWORD dwLength = 0;
GetUserObjectInformation(hWinSta
, UOI_NAME
, NULL
, 0
, &dwLength);
if (dwLength)
{
LPWSTR lpName = (LPWSTR)HeapAlloc(GetProcessHeap()
, HEAP_GENERATE_EXCEPTIONS | HEAP_ZERO_MEMORY
, dwLength);
BOOL result = GetUserObjectInformation(hWinSta
, UOI_NAME
, lpName
, dwLength
, &dwLength);
if (result)
{
wprintf_s(L"%s\n", lpName);
}
HeapFree(GetProcessHeap(), 0, lpName);
}
Batch logon 等 non-interactive な process で利用される SAWinSta とはなんぞや?