Необходимо реализовать запись логов событий активного приложения в формате: "Имя нашего приложения" - событие "Стороннее приложение" - просто запись
Данной конструкцией получаю имя активного окна
StringBuilder builder = new StringBuilder(255);
GetWindowText(GetForegroundWindow(), builder, 255);
Запись в лог идёт через streamwriter. Подскажите,как реализовать конструкцию,чтобы при изменении активного окна лог переходил на новую строчку? По логике понимаю,что пока title окна не изменился,то идёт запись sw.write,а как только окно изменилось,то sw.writeline(builder+" "+log),но на практике пока не смог реализовать
Помучившись нашёл решение
public static string Title = String.Empty;
public static bool IsWindowChanged()
{
StringBuilder builder = new StringBuilder(255);
GetWindowText(GetForegroundWindow(), builder, 255);
string memory = builder.ToString();
bool res = Title == memory;
winTitle = wTitle;
return res;
}
static void main()
{
if (IsWindowChanged() == false)
{
sw.WriteLine("");
sw.WriteLine(Title+" "+log);
}
else
{
sw.Write(log);
}
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости