Что нового

Check_md5 - пакетная проверка контрольных сумм

AZJIO

Меценат
Меценат
Сообщения
2,892
Репутация
1,196
AutoIt: 3.3.6.1
Версия: 0.7.1

Категория: Автоматизация, Вспомогательные функции
Описание: 1. Скрипт проверки контрольных сумм для указанного типа файла или всех файлов в каталоге включая подкаталоги и сохранения их в файл-базу в виде путь|md5. С последующей возможностью автоматической проверки и вывод информации в три лог-файла: список не изменившихся файлов, список изменившихся файлов и список отсутствующих файлов из файл-базы данных.
2. Быстрое сравнение двух файлов.
3. Проверка файлов при автозагрузке Windows. Выполняется в тихом режиме. При изменении файлов выдаёт сообщение и записывает в log-файл дату и данные об изменении. При включении автозагрузки в реестр добавляются две ветки:
"HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Run", "Check_md5" - для автозагрузки.
"HKCU\SOFTWARE\script_az\Check_md5", "Autostart" - для чекбокса.

Примечание: Скрипт тестировался на WindowsXP SP3. При создании скрипта придерживался цели создать скрипт для быстрой сверки оригинальности дистрибутивов при подозрении заражения компьютера вирусами. Написан по прочтении темы подсчёта контрольных сумм, спасибо madmasles.

Файл: Check_md5 (exe+исходник)

Снимок:


История версий:
0.7
Переработка кода (оптимизация, исправления)
Для поиска файлов используется FileOperations.au3


Источник: azjio.ucoz.ru
Автор(ы): AZJIO
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Re: Пакетная проверка контрольных сумм

AZJIO
Нашел еще пару утилит для определения MD5 или SHA1 и т. д. Посмотрите здесь: File Checksum Integrity Verifier (FCIV) и здесь: HashMyFiles

PS
capicom.dll и в Win 7 32 работает, я проверял.

OffTopic:
PPS
Дабы восстановить справедливость, хочу сказать спасибо Garrett`у, так как способ определения хеш-сумм с помощью capicom.dll я узнал от него. :smile:
 
Автор
A

AZJIO

Меценат
Меценат
Сообщения
2,892
Репутация
1,196
Re: Пакетная проверка контрольных сумм

madmasles
Мне давали ссылку на подобную подборку, но я решил сам написать.

Каждая утилита может чем то не устраивать, и чтоб не потерять время и мысли собраны и есть конечная цель, решил сделать. Управление меня устраивает, русский язык, вывод лога. А теперь гляну утилиты.

По поводу HashMyFiles - в ней я не вижу последующей возможности сверки. А fciv.exe из ком-строки. В основном утилиты показывают контрольные суммы и позволяют сравнить один из файлов, а так чтобы массово проверить именно по базе, которая создавалась на оригинальных файлах, такого пока не вижу.

Кстати уже пригодилось, сравнил комплект портабельных программ на харде с DVD-комплектом-оригиналом, разница в версиях в 28-ми exe-файлов.
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Re: Пакетная проверка контрольных сумм

Зачем вообще нужны сторонние утилиты и библиотеки? В AutoIt есть функция _Crypt_HashFile(), которая делает все тоже самое.
 
Автор
A

AZJIO

Меценат
Меценат
Сообщения
2,892
Репутация
1,196
Re: Пакетная проверка контрольных сумм

Yashied
Ну тогда новая версия. Проверил, создаёт списки один в один с предыдущей версией.
Можно добавить ещё проверку в разных форматах.

_____________________________

Обновлена версия до 0.4 (обновлены все ссылки)
Добавлена вкладка "Файл" для сравнения двух файлов.
Добавлена статистика в строке состояния и лог-файлах.
И по мелочи интерфейсная автоматизация.
 

FlatX007

Tattoo!
Сообщения
197
Репутация
35
Re: Пакетная проверка контрольных сумм

Я как пользовался ТоталКомандером .... ;)
 

FlatX007

Tattoo!
Сообщения
197
Репутация
35
Re: Пакетная проверка контрольных сумм

Да да он самый - подарок эдишэн :smile:
Ну разу не сталкивался с такой проблемой ... как постоянная проверка контрольных сумм.

md5 мне кажется нужна вообще только для в нутре программных целей ... и загонять в оболочку тем более в такую "сложную" совершенно ненужно. Вполне хватит тотала ...
 
Автор
A

AZJIO

Меценат
Меценат
Сообщения
2,892
Репутация
1,196
Re: Пакетная проверка контрольных сумм

FlatX007
Года 4 назад специально искал программу для проверки целостности оригинала и скачал какую-то с красным интерфейсом уже не помню название, у неё была фича проверять файлы в автозагрузке на предмет изменения, это единственная защита от вирусов. Антивирусник может не увидеть новых вирусов, а программа сверки сработает на 100%.
Особенно действенно это, когда есть подозрения на вирус, а антивирусник молчит, например у меня вдруг стала лезть в автозагрузку dll, об этом напоминал "AnVir Task Manager" при каждой загрузке, видать новый вирусный код хотела в реестр добавить. Да и другие случаи были...

Вполне хватит тотала
тоталом вообще не пользуюсь, а его сравнивалка хуже DupeLocater, там мне в худшем случае приходится создать папки, кинуть в них файлы, а папки кинуть в DupeLocater. То в тотале мне нужно копировать два пути, вставить в адресную строку тотала +Enter, чтоб перейти в папки, выбрать файл, выбрать в меню пункт сравнения, сгенерировать файл md5, перекинуть в каталог другой папки сменить ему имя на имя второго файла, выбрать сравнить... и это называется "достаточно тотала"? Подсчитай количество кликов для сверки одного файла.
 

XM

Знающий
Сообщения
70
Репутация
8
Re: Пакетная проверка контрольных сумм

madmasles сказал(а):
AZJIO
Нашел еще пару утилит для определения MD5 или SHA1 и т. д. ...
Утилит подобных много во всемирной можно найти, но автор попытался реализовать эту функцию именно с помощью AutoIt.
Если на каждое решение искать сторонние программы, то тогда зачем вообще изучать скриптовый язык AutoIt?
 
Автор
A

AZJIO

Меценат
Меценат
Сообщения
2,892
Репутация
1,196
Re: Пакетная проверка контрольных сумм

vendor
Утилит подобных много во всемирной можно найти
как я уже отписывал, пока не нашёл.

Кстати, подумал о командной строке, можно сделать проверку файлов в автозагрузке. Механизм создания известен, времени пока нет. Нужно переписать множественную проверку в функцию, добавить вкладку "Автозагрузка", сканировать ярлыки в автозагрузке пользователя и всех пользователей, прочитать ветки реестра Run, извлечь пути в файл-базу. В интерфейсе добавить автозагрузку программы с передачей в ком-строке путь и файл-базу. Кнопкой "добавить" или drag-and-drop дописывать недостающие файлы в файл-базу.
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,322
Re: Пакетная проверка контрольных сумм

vendor
Первый вариант скрипта был с использованием capicom.dll. Вы, очевидно, его не застали.
OffTopic:
Если на каждое решение искать сторонние программы, то тогда зачем вообще изучать скриптовый язык AutoIt?
Во-первых, большинство пользовательских функций, подозреваю, что и нативных, используют сторонние программы, например, функции системных dll. Во-вторых, если некоторые программы (утилиты), особенно командной строки, делают то, что не умеет AutoIt, или то, что умеет, но быстрее, то почему бы их не использовать в скриптах, и чем это мешает изучению AutoIt`a, ИМХО.
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Re: Пакетная проверка контрольных сумм

madmasles
мне кажется все функции AutoIt построены на WinAPI
 
Автор темы Похожие темы Форум Ответы Дата
All2khoff Стол заказов 7
Верх