Задать вопрос
VariusRain
@VariusRain
музыкант-программист-конструктор

Как вернуть консольное приложение из области уведомлений?

Доброго всем времени суток!

Написал простенькое консольное приложение. Оно в фоновом потоке слушает ком порт и, получая оттуда сообщения, пересылает их на удалённый сервер.
Когда все что нужно сделано, отправляем окошко консоли в область уведомлений.
[DllImport( "user32.dll" )]
	private static extern bool ShowWindow( IntPtr hWnd, int nCmdShow );

	[DllImport( "kernel32.dll", ExactSpelling = true )]
	private static extern IntPtr GetConsoleWindow();
...
	icon = new NotifyIcon();
	icon.Icon = new Icon( "icon.ico" );
	icon.Visible = true;
	icon.Click += ShowConsole;
	icon.DoubleClick += ShowConsole;

	ShowWindow( GetConsoleWindow(), 0 );

	private static void ShowConsole( object sender, EventArgs e ) {
		ShowWindow( GetConsoleWindow(), 1 );
		icon.Visible = false;
	}


Но проблема в том, что клик на иконку попросту не отрабатывает (Код в ShowConsole просто не заходит)

Буду признателен за любую подсказку. Не могу понять, что и где я не досмотрел...

Доподнение.
На стековерфлоу нашёл решение, что нужно подписываться на MouseClick
icon.MouseClick += ShowConsole;
Но это тоже не работает
  • Вопрос задан
  • 155 просмотров
Подписаться 2 Простой 6 комментариев
Помогут разобраться в теме Все курсы
  • OTUS
    C# Developer. Professional
    6 месяцев
    Далее
  • Ulearn.me
    Основы программирования на примере C#. Часть 1
    1 неделя
    Далее
  • Software-testing.ru
    Программирование на C# для тестировщиков
    10 недель
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы