Я некоторое время скрывался на SO, это был отличный ресурс. Теперь я попытаюсь быть активным членом...:)
У меня есть программа, которая иногда нуждается в сканировании некоторых каталогов рекурсивно (улучшение для этой части программы находится в конвейере, но не будет готово какое-то время). Чтобы пользователь не дождался этого сканирования, я хотел бы выполнить сканирование, пока пользователь не использует мою программу, если это возможно.
Я намерен реализовать его, запустив таймер, который проверяет время простоя. Я нашел следующее для проверки простоя системы: http://www.delphitips.net/2007/11/11/how-to-detect-system-idle-time/
Это будет функционально, но я бы предпочел активировать функцию, даже если пользователь работает с другими программами на одном компьютере. Таким образом, если он переключится на другую программу, я мог бы догнать сканирование, которое мне нужно сделать.
Я понимаю, что я мог выполнять сканирование в фоновом потоке, и либо это, либо какие-то крючки для окон будут реализованы в какой-то момент, но не только.
EDIT: Цель здесь - относительно простое изменение программы для любого сканирования, которое может быть поставлено в очередь, пока пользователь не активно использует МОЕ приложение. Сканирование не особенно интенсивно, но оно не выполняется в потоке и, следовательно, зависает мое приложение во время работы. В принципе, я ищу быстрый выигрыш, пока я работаю над более долгосрочным решением.