как обнаружить все окна (других приложений) свернутыми из приложения c #
Используйте пример отсюда http://pinvoke.net/default.aspx/user32.EnumDesktopWindows, затем просто проверьте состояние окна
Если вы хотите следить за тем, что происходит в системе, вы хотите установить CBT Hook . Это будет держать вас в курсе, когда окна созданы, уничтожены, свернуты, развернуты, активированы и т. Д. И т. Д.
Использовать функцию GetWindowState () WinAPI
Для Windows Forms вы можете посмотреть свойство WindowState объекта Form.Минимизированные окна будут иметь состояние FormWindowState.Minimized.
FormWindowState.Minimized