Программирование КПК и смартфонов на .NET Compact Framework.

Активация и закрытие приложения.

Для активации запущенного приложения вызывается функция Windows API SetForegroundWindow, которая использует дескриптор окна. Для закрытия приложения используется функция SendMessage с соответствующим сообщением закрытия WM_CLOSE. Для закрытия сразу всех окон можно использовать функцию Windows API SHCloseApps, которая закрывает все запущенные программы, кроме самого Диспетчера задач. Код, выполняющий эти действия, приведен в листинге 7.26.

Листинг 7.26.

Public static void ActivateWindow(IntPtr hWnd) {

 // Активируем приложение.

 SetForegroundWindow(hWnd);

}

Public static void CloseWindow(IntPtr hWnd) {

 // Закрываем приложение.

 SendMessage(hWnd, WM_CLOSE, 0, 0);

}

Public static void CloseApps() {

 // Закрываем все приложения.

 SHCloseApps(int.MaxValue);

}