Не каждый сервисный процесс имеет такой SID!
могу определить, выполняется ли приложение, в котором выполняется мой код, в приложении или в приложении? Почему я хочу это знать - я пишу некоторый код, который внедряется в целевое приложение, и у этого кода нет способа узнать эту информацию заранее, поэтому он должен решить ее сам.
Я не могу полагаться на какой-либо код, вызываемый из диспетчера управления службами, параметров запуска, остановки или командной строки.
Я сейчас смотрю наGetConsoleWindow()
который я надеюсь вернетсяNULL
для службы (без консоли) и дескриптор окна для любого приложения (имеет консоль). Не уверен, насколько верно это предположение.
Есть идеи для лучшего решения?