У меня произошел сбой проводника в Windows 7 (включены Aero Bells и Whistles) и (после перезагрузки проводника) все запущенные экземпляры IDE больше не доступны через пользовательский интерфейс Windows, кроме одного. Процессы все еще здесь, поэтому я хочу вернуть свои несохраненные изменения. Что мне делать?
Не предлагайте дампы памяти, я оставляю это как самое последнее средство, потому что восстановление исходного кода из дампа требует значительной ручной работы.
Уже отправлено сообщение WM_ACTIVATE во все окна верхнего уровня, принадлежащее bds.exe
- безуспешно, кроме пары "файл изменен, перезагрузите?" подсказки.
Решено путем отправки WM_KEYDOWN и WM_KEYUP во все окна процесса.
Удалить этот вопрос или оставить открытым для новых идей? (Честно говоря, я сталкивался с такой проблемой только один раз, не зная, будет ли решение кому-нибудь полезно). Но никогда не используйте ShowWindow во всех окнах, BDS имеет множество окон, которые должны быть скрыты.
Возможная косвенная причина: я перетаскивал файлы из Проводника через миниатюры Aero Peek в Диспетчер проектов, одна из операций завершилась странным артефактом в виде значка файла, который постоянно зависал на рабочем столе, где находился Диспетчер проектов.