Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.03.2013, 15:21   #1
System64
Новичок
Джуниор
 
Регистрация: 31.03.2013
Сообщений: 1
По умолчанию Непонятно с TStringList

При высчитывании md5 TStringList - а все значения получаются разными, правильное только то, что md5 файла (отдельного).
Исходный код + скомпилированная программа + тестовый файл прилагаются.
Не могу понять почему они разные, ведь текст один и тот же.
Что можно предпринять для получения одинаковых Md5?
Вложения
Тип файла: rar Md5Strings.rar (1.62 Мб, 5 просмотров)
System64 вне форума Ответить с цитированием
Старый 31.03.2013, 16:10   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,322
По умолчанию

Во-первых, D41D8CD98F00B204E9800998ECF8427E - хеш пустого.
То есть, нужно так:
Код:
TEST.SaveToStream(Buffer);
Buffer.Position := 0;
Form1.Edit2.Text := MD5Stream(Buffer);
Тогда будет правильный хеш (относительно данных, которые хранятся в потоке).
По-моему, "виноват" StringList, который как-то меняет данные. Точнее он добавляет 2 байта в конце текста (перенос на новую строку).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 31.03.2013 в 16:25.
BDA на форуме Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вообще непонятно vadiprog Помощь студентам 1 15.11.2011 03:26
непонятно.. kosmo Помощь студентам 3 31.05.2011 18:20
Непонятно.... IICuX123 Общие вопросы .NET 2 23.07.2009 10:27
непонятно StasSv Microsoft Office Excel 1 26.02.2009 14:16