Практическое руководство. Определение интерактивного состояния пользователя (C++/CLI)
Представленный ниже пример кода демонстрирует, как определить, выполняется ли код в контексте интерактивного взаимодействия с пользователем. Если UserInteractive имеет значение "false", то код выполняется как служебный процесс или изнутри веб-приложения. В этом случае не следует предпринимать попытку взаимодействия с пользователем.
Пример
// user_interactive.cpp
// compile with: /clr
using namespace System;
int main()
{
if ( Environment::UserInteractive )
Console::WriteLine("User interactive");
else
Console::WriteLine("Noninteractive");
return 0;
}