3

Было несколько случаев, когда мои машины с Windows 2000 и XP неожиданно выключались из-за сбоя Windows или отключения питания, из-за которого ИБП автоматически выключал компьютер.

Я человек, у которого часто открыто много программ, и я часто хожу недели или даже месяцы, не перезагружая компьютер, поэтому очень сложно вспомнить, какие программы у меня были открыты, и все, над чем я работал, если компьютер выключается. неожиданно Кроме того, я иногда открываю экземпляры Блокнота, чтобы записывать напоминания или небольшие списки дел. Те, очевидно, теряются в неожиданном отключении.

Есть ли какое-либо программное обеспечение (коммерческое или бесплатное), которое может запомнить все окна (и их заголовки), которые я открывал до выключения? Кроме того, если программное обеспечение может сохранять содержимое окон Блокнота, это тоже было бы здорово, хотя я не уверен, что это возможно.

1 ответ1

0

неожиданное отключение

Несколько моментов:

надежность

Если требуется 100% надежность, это невозможно. Это "состояние гонки". В настоящее время нет способа атомарно открыть окно, одновременно синхронизируя существование этого окна с файловой системой. Представьте себе эту последовательность событий в хронологическом порядке от раннего к более позднему:

  1. Вы открываете приложение, или приложение открывает новое окно.
  2. Windows API предоставляет уведомление "программе мониторинга" о существовании окна.
  3. Питание отключается до того, как "программа мониторинга" сможет записать факт наличия окна в "постоянном хранилище"; то есть жесткий диск.

Знание приложений

В общем случае ни одна сторонняя программа не может знать причину, по которой программа открыла данное окно. На уровне программирования, программа может принять решение об открытии нового окна по любой причине или без причины. Учитывая этот факт, сторонняя программа не может знать, какие шаги необходимы для того, чтобы программа открытия окон открывала новые окна.

Для конкретных приложений это можно сделать. Например, для Microsoft Word существуют способы чтения заголовков окон и определения имен открытых документов или даже установки надстройки Word, которая отслеживает открытые окна и отслеживает открытые документы, а затем повторно открывает их при перезагрузке.

Однако при поиске такого решения вам необходимо убедиться, что "программа мониторинга" способна понять стратегию управления окнами каждого приложения, которое вы хотите автоматически повторно открыть, а также понять процесс запроса этого приложения на повторное выполнение. -открыть все эти окна.

Один "наивный" способ добиться этого - отслеживать все запущенные программы, создавшие одно или несколько окон, а затем "тупо" запускать эти исполняемые файлы при перезагрузке компьютера. Было бы довольно просто написать такую программу, и на самом деле, я уверен, что существует много таких программ. Недостатком является то, что это, вероятно, не так полезно - насколько это было бы полезно для вас, если notepad.exe запускался при запуске Windows без открытого документа? Это в основном то, что вы можете сделать в "общем случае".

Целостность данных

Если вы занимаетесь редактированием документа в Блокноте, Word или любой другой программе-редакторе, и ваш компьютер внезапно отключается, нет надежного способа сохранить все ваши данные. Если вы надеетесь на программное решение для этого, продолжайте надеяться. Лучше купить источник бесперебойного питания (ИБП), который, по сути, представляет собой большую батарею, подключенную к вашему ПК, которая предотвращает сбой питания вашего ПК, если основное электричество отключается или временно выходит из строя. Обычно ИБП может поддерживать работу вашего ПК достаточно долго, чтобы вы могли сохранить свою работу и выключиться.

В принципе, существует один способ добиться большей целостности данных, но это деталь реализации редактора текста / документа: если редактор записывает ваши изменения на диск каждый раз, когда вы вводите символ или вносите изменения, то наиболее данные, которые вы можете потерять, - это один символ (вы набрали символ, и он не смог выйти на диск до потери питания). Однако, как сегодня работает большинство редакторов, вы можете потерять данные за несколько минут (в случае автосохранения) или все ваши данные (в случае редакторов без автосохранения).

Я не даю рекомендаций по программному обеспечению;)

То, что «просто отслеживает, какие файлы открыты в Блокноте», выполнимо, но, вероятно, еще проще использовать настоящий текстовый редактор, который запоминает, какие файлы открыты без сторонних плагинов, таких как Notepad++.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .