Если немного посчитать, то, например, на таком портале как Softpedia одну из моих программ, что зовётся Imtec Battery Mark, скачали более 27 тысяч раз, а на Soft Portal’е - примерно 9,5 тысяч раз (при этом я совершенно не считаю количество скачиваний со специальной страницы в моём блоге). В любом случае, сейчас у программы довольно много пользователей (за что им всем отдельное большое спасибо!), но в ней есть один досадный баг, который, к сожалению, исправить мне не удастся, ибо исходники давно утеряны, а я всё никак не могу собраться и написать новую версию с нуля…

Баг, о котором упоминал выше, заключается в следующем: при падении заряда батареи ниже критического ноутбук отключается и программа не успевает дописать в файл с результатом конечный блок с дополнительной информацией (и зачем я только это придумал?) не успевает записаться. При попытке открыть такой файл, чтобы просмотреть результаты и график, просто ничего не произойдёт - программа откроется ничего не показав, готовая к новому тестированию.

Что же делать в этом случае, если не хочется тратить время на повторное тестирование, тем более, что все данные уже имеются? Нужно лишь позволить программе считать, что всё в порядке. Для этого нам потребуется выполнить следующее:

  • открыть файл .bmr с результатами тестирования в любом текстовом редакторе (в кодировке cp1251; стандартный Блокнот для этого вполне сгодится)
  • поставить курсор в самый-самый конец файла (Ctrl+End)
  • добавить в конец букву я (да-да, маленькую русскую Я :))
  • сохранить и открыть уже с помощью Battery Mark’а

С большой долей вероятности, после всех манипуляций вы увидите график со всеми результатами.

Что же при этом происходит? Буква я в кодировке cp1251 (или win-1251), представляет собой значение 0xFF, которое и определяет наличие конечного информационного блока в файле с результатом.

P.S.: Большое спасибо Денису Кавешникову за использование моей программы и за обращение с этой проблемой.

P.P.S.: Возможно, когда-нибудь я соберусь и перепишу всё это, но это будет уже совсем другая история :)