Здравствуйте, aceproof, Вы писали:
A>Решилось довольно просто:
A>1. Нахожу PID характерного процесса (explorer.exe)
A>2. OpenProcess(...) -> OpenProcessToken(...) ->GetProcessToken(...) ->GetTokenInformation(..., TokenUser, ...)
A>3. Получил строку SID с помощью ConvertSidToStringSidA(...)
A>Когда вход в систему не выполнен, приложение explorer.exe не запущено со всеми вытекающими последствиями
А если используется не эксплорер в качестве оболочки.

тогда Ваша проверка не годиться...
сначала необхлдимо узнать какая программа используеться в качестве оболочки
а потом искать именно это имя..