|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
13.09.2010, 15:18 | #1 |
Пользователь
Регистрация: 13.09.2010
Сообщений: 65
|
Как вытащить функцию из исходника
Не подскажете, нужно сравнить два текстовых файла
(снимки файловой системы сделанные в разное время) и найти разницу (какие файлы были добавлены). Ну и записать эти файлы в третий текстовый файл. Есть исходник программы WinDiff которая практически мнгновенно делает сравнение и выводит информацию в окно программы (правда как записать эту инфу в файл я так и не разобрался). Не подскажете где находится эта функция в программе. Например в файле WINDIFF.C Хотя могу и ошибатся может она (или они) находится в других файлах на всякий случай прелепил весь исходник. Короче нужно вытащить эту функцию. Своих знаний пока не хватает. Или это не возможно. |
13.09.2010, 15:21 | #2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
13.09.2010, 15:26 | #3 |
Пользователь
Регистрация: 13.09.2010
Сообщений: 65
|
C:\Assch
C:\AUTOEXEC.BAT C:\boot.ini C:\Bootfont.bin C:\CONFIG.SYS C:\Documents and Settings C:\IO.SYS C:\MSDOS.SYS C:\NTDETECT.COM C:\ntldr C:\pagefile.sys C:\Program Files C:\RECYCLER C:\System Volume Information C:\WINDOWS |
13.09.2010, 15:30 | #4 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Мне кажется что проще написать заново быстренько такую функцию сравнения чем выдирать чужое.
I'm learning to live...
|
13.09.2010, 15:36 | #5 |
Пользователь
Регистрация: 13.09.2010
Сообщений: 65
|
Если бы я обладал такими знаниями то конечно
Эта функция слишком большая? |
13.09.2010, 15:51 | #6 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Не думаю.
В цикле считать в строку весь файл, а потом читая построчный искать считанную строку в исходной строке. Если не найдена - вывести. Порядка 10-20 строк кода.
I'm learning to live...
|
13.09.2010, 16:04 | #7 |
Пользователь
Регистрация: 13.09.2010
Сообщений: 65
|
Текстовые файлы весят около 2 мб, в них больше 20000 строк (это если делать
снимок ещё на свежей винде). Мне давали одну функцию правда не на - С . Так вот она ищет изменения около 2 минут. А программа WinDiff делает это практически мгновенно. Поэтому я хотел узнать что эта за функция, какими алгоритмами она работает. |
13.09.2010, 19:51 | #8 |
Форумчанин
Регистрация: 14.12.2009
Сообщений: 716
|
Ну, по информации внутри искать и не нужно, раз ты сказал что можно и по сравнению времени. _findfirst32()/_findnext() и т.д. а в условиях проверяешь определенные атрибуты, то есть в твоем случае это время.
|
13.09.2010, 20:58 | #9 |
Пользователь
Регистрация: 13.09.2010
Сообщений: 65
|
По сравнению времени не пойдёт так как некоторые программы например
при инсталяции ставят (некоторые) файлы с более ранним сроком по этому такой алгоритм их не отследит Кстати это первое что мне пришло на ум я даже сделал функцию Эксперементировал со всеми тремя атрибутами времени 1 Создание 2 Открытие 3 Изменение Но увы сталкнулся с такой проблемой Последний раз редактировалось assch; 13.09.2010 в 21:05. |
13.09.2010, 21:25 | #10 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
1) если Вы точнее опишите, что Ваша программа должна высветить (приведёте два текстовых файла и скажете, что Вы хотите получить на выходе) - я Вам такую утилитку на Delphi могу написать.
2) банальное fc пробовали? 3) А ещё попробуйте утилитку TextDiff (с) Angus Johnson Какой-никакой, но отчёт о найденных различиях в ней присутствует... |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как создать дистрибутив из исходника Delphi + BDE ? | golt-andrej | Общие вопросы Delphi | 3 | 04.08.2010 03:52 |
Как из кода вытащить 5,6,7 символы | Romuald | Microsoft Office Excel | 6 | 14.01.2009 09:25 |
как вытащить форму | Барби | Помощь студентам | 5 | 01.10.2008 09:02 |
Как вытащить из XP список пользователей | UnD)eaD)Snake | Win Api | 10 | 29.04.2008 20:38 |
Как вытащить путь к файлу | UnD)eaD)Snake | Общие вопросы Delphi | 13 | 20.08.2007 22:09 |