Страница 1 из 6

[Req] WDX для отображения 1-й строки файла

Добавлено: Ср авг 01, 2007 14:15
DrShark
Нужен плагин, который может отображать первые n байт сначала и с конца файла, в режимах bin и hex, возможно, с использованием разных кодировок для вывода.
Зачем нужно? В новом диалоге замены в TC7 есть возможность использовать поля контентных плагинов. Конечно, в этом самом диалоге можно нажать "Сравнить" для сравнения файлов во встроенном инструменте сравнения, но чтобы понять, что файлы отличаются, иногда достатночно нескольких байт, и вызов сравнения - просто лишнее действие.
В принципе, содержимое начала файла можно ивывести и с помощью FileDiz/FileDesc, но это всё же не то.

Исправлена опечатка «сторки» в названии темы.
Моторокер.

Добавлено: Ср авг 01, 2007 14:34
Моторокер
Цель какая? Визуально сравнить файлы?
Плагин для подсчёта контрольных сумм не подойдёт?
Или скорость важнее точности?

Добавлено: Ср авг 01, 2007 16:34
DrShark
Моторокер писал(а):Плагин для подсчёта контрольных сумм не подойдёт?
Этот плаг, конечно, архиполезнейшая штука, и его вполне достаточно, чтобы понять, что файлы одного размера отличаются, но есть файлы, для которых не отображаются эскизы, и нужно увидеть именно отличие. Это можно делать инструментом сравнения, но иногда быстрее и нагляднее то, что я предложил выше - вывод полей плагина прямо в диалоге замены.
Или скорость важнее точности?
Вчера занимался удалением дубликатов для нескольких сот файлов, разбросанных по винту, в ход шло в том числе и копирование с заменой. Приходилось жать "Сравнение" на нескольких заменах подряд, хотя для выяснения различий хватило бы нескольких байтов файлов, которые вполне мог бы выводить контентный плаг.

Добавлено: Ср авг 01, 2007 18:08
Alextp
Очень просто написать плагин к FileDesc.
Вот например, плагин, который читает описание из VersionInfo:

Код: Выделить всё

function ImportDesc_SameFile(PluginID: Word; FileName, Desc: PChar;
  RequireFile: TWIRequireFileProc): Boolean; stdcall;
var
  fn, ver1, ver2: string;
begin
  Result:= false;
  fn:= RequireFile(FileName);
  case PluginID of
    0:
      begin
      ver1:= FileVersionInfo(fn, 'FileDescription');
      ver2:= FileVersionInfo(fn, '');
      if ver2<>'' then
        ver1:= SFormat('%s (%s)', [ver1, ver2]);
      StrLCpy(Desc, PChar(ver1), MaxDescLength);
      Result:= lstrlen(Desc)>0;
      Exit
      end;
  end;
end;

как видишь, все очень просто - написать одну ф-цию (остальное взять как есть) и плагин готов

Добавлено: Ср авг 01, 2007 18:17
DrShark
Очень просто написать плагин к FileDesc.
Это типа нужно написать скрипт для Script Content Plugin, а потом подключать его (Script Content) к FileDesc?

Добавлено: Ср авг 01, 2007 18:22
Alextp
Нет, это на Делфи. Хотя можно и на C.

Добавлено: Ср авг 01, 2007 18:31
DrShark
Нет, это на Делфи.
Блин, я даже на исходник толком не глянул.
Впрочем, без разницы. Это исходник обычного контентного плагина, или для FileDesc sdk какой-то есть?

Добавлено: Ср авг 01, 2007 18:43
Alextp
Для FileDesc подходит SDK WhereIsIt.

Добавлено: Ср авг 01, 2007 18:48
DrShark
Ладно, попробую сам чё-то на паскале сотворить, не выйдет - придётся скрипты для Script Content делать.

Добавлено: Ср авг 01, 2007 19:58
Led
Я когда-то делал себе плагин - отображает одну строчку (можно выбрать номер), можно выбрать кодировку dos/win и можно задать автозамену каких-нибудь символов. Если надо - дам плаг или исходники (delphi).

Добавлено: Ср авг 01, 2007 20:05
DrShark
2Led
Спасибо, сейчас то, что нужно.
Выложи его куда-нибудь всместе с сорсами, или на и-мейл скинь (см. ЛС).

Добавлено: Чт авг 02, 2007 01:57
Led

Добавлено: Ср окт 03, 2007 18:49
Ник
Вопрос:
возможность выбора порядкового номера строки, кодировки текста
Вопросы:
- написано "Кодировка по умолчанию" - откуда берётся это умолчание?
- Номер поля - это номер строки (как я понял) - можно ли увеличить выбор до 30 строчек (важно при сравнении файлов писем для пропуска заголовков)?
- можно ли заменять (убирать) теги HTML (XML) (всё между полями < и > и т.п.) - чтобы при сравнении HTML (XML) остался "голый" текст?

Спасибо :)

Добавлено: Чт дек 01, 2011 13:34
aLLigator
Добрый день! что-нибудь получилось с этим плагином?

Сейчас по работе понадобилось чтобы в одном из столбцов Тотала отображался участок из файла в HEX (нужна сортировка по значению).

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

Был бы премного благодарен за готовый плагин!

Добавлено спустя 2 часа 8 минут:

В принципе, приемлемое решение найдено в этой теме:
http://forum.wincmd.ru/viewtopic.php?t= ... c&&start=0

но если данный плагин все же был написан - прошу поделиться!

Добавлено: Ср янв 11, 2012 18:34
Dec
aLLigator писал(а):Сейчас по работе понадобилось чтобы в одном из столбцов Тотала отображался участок из файла в HEX
http://www.thumbnailexpert.com/binary/decHexWDX.zip. Сильно не тестировал. В комплекте исходники.