OLE2Viewer - анализ и просмотр структуры файлов OLE2
- HaRT
- Moderator
- Posts: 10863
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
OLE2Viewer - анализ и просмотр структуры файлов OLE2
Latest post of the previous page:
Я затеял обсуждение безотносительно конкретного плагина: viewtopic.php?p=142987#p142987
Фар есть инструмент, а не нянька. © 2009 DrKnS
- HaRT
- Moderator
- Posts: 10863
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
OLE2Viewer - анализ и просмотр структуры файлов OLE2
Предлагаю атрибут “Reparse point” — для него частенько уже настроена раскраска, как у директорий (или похожая).
Фар есть инструмент, а не нянька. © 2009 DrKnS
OLE2Viewer - анализ и просмотр структуры файлов OLE2
Подскажите как то можно отключить обработку плагина по Enter ? Хотелось бы все таки открывать файлы а не заходить в них, а когда нужно вызывать плагин.
И хотелось бы узнать полный список расширений на который срабатывает плагин.
И хотелось бы узнать полный список расширений на который срабатывает плагин.
- HaRT
- Moderator
- Posts: 10863
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
OLE2Viewer - анализ и просмотр структуры файлов OLE2
Эта проблема не специфична для конкретного плагина. Обсуждение тут: Вместо запуска входим в файл как в архив.
Фар есть инструмент, а не нянька. © 2009 DrKnS
OLE2Viewer - анализ и просмотр структуры файлов OLE2
Тем не менее не кажется ли Вам что это правило хорошего тона, задавать обработку поведения в настройках плагина?
Тем более как угадать то все расширения на которых плагин будет срабатывать, если разработчик не указывает таких спецификаций?
Если уж я арклайт с мультиарком подружил (извините с раром работать надо), а в ассоциациях девственная чистота, не поверите. при том плагинов всего больше 70. Не первый десяток лет с фаром то...
По мне так проще тогда загружать этот плагин только когда нужно, но это не верный путь.
Вобщем просьба к разработчику, если сможете - реализовать такой функционал, плагин классный!
Тем более как угадать то все расширения на которых плагин будет срабатывать, если разработчик не указывает таких спецификаций?
Если уж я арклайт с мультиарком подружил (извините с раром работать надо), а в ассоциациях девственная чистота, не поверите. при том плагинов всего больше 70. Не первый десяток лет с фаром то...
По мне так проще тогда загружать этот плагин только когда нужно, но это не верный путь.
Вобщем просьба к разработчику, если сможете - реализовать такой функционал, плагин классный!
OLE2Viewer - анализ и просмотр структуры файлов OLE2
В принципе можно сделать плагин так, чтобы заходил в файлы только Ctrl-PgDn, а по Enter опционально. Я, признаться, целевые файлы для плагина сам открываю по Shift-Enter.Shtirla wrote: ↑Wed 27 Sep, 2017 12:11Тем не менее не кажется ли Вам что это правило хорошего тона, задавать обработку поведения в настройках плагина?
Тем более как угадать то все расширения на которых плагин будет срабатывать, если разработчик не указывает таких спецификаций?
Если уж я арклайт с мультиарком подружил (извините с раром работать надо), а в ассоциациях девственная чистота, не поверите. при том плагинов всего больше 70. Не первый десяток лет с фаром то...
По мне так проще тогда загружать этот плагин только когда нужно, но это не верный путь.
Вобщем просьба к разработчику, если сможете - реализовать такой функционал, плагин классный!
Списка расширений нет совсем, потому как нет привязки к расширению: плагин проверяет сигнатуру и поля заголовка OLE2. Если все OK, то открывает.
- John Doe
- Бюрократ
- Posts: 13853
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 73 times
- Been thanked: 428 times
- Contact:
OLE2Viewer - анализ и просмотр структуры файлов OLE2
Иногда полезно иметь настройку списка расширений, потому что в противном случае слишком много плагинов "обнюхивают" каждый файл, что создаёт неприятные задержки.
OLE2Viewer - анализ и просмотр структуры файлов OLE2
Насчет настройки списка расширений может и справедливо. Расширений файлов Compound File очень много, а расширения может и не быть вовсе
А насчет "неприятных задержек" все же не соглашусь: сколько их добавит код выше?
Code: Select all
HANDLE WINAPI AnalyseW(
const struct AnalyseInfo *Info
)
{
if (!Info ||
(Info->StructSize < sizeof(struct AnalyseInfo)) ||
!Info->FileName)
return (HANDLE)0; /* return nullptr; */
// Анализ файла-контейнера
return (HANDLE)AnalyzeStorage(Info->FileName,
Info->Buffer,
Info->BufferSize);
}
int AnalyzeStorage(
const wchar_t *pwszFileName,
const void *buf,
size_t bufSize
)
{
if ((bufSize < 2 * sizeof(uint32_t)) ||
(((uint32_t *)buf)[0] != OLE2_SIGNATURE) ||
(((uint32_t *)buf)[1] != OLE2_VERSION))
return 0;
const PCOMPOUND_FILE_HEADER pFileHeader = (PCOMPOUND_FILE_HEADER)buf;
if (bufSize >= sizeof_through_field(COMPOUND_FILE_HEADER, wSectorShift))
{
if ((pFileHeader->wSectorShift < 0x0009) ||
(pFileHeader->wSectorShift > 0x000C))
return 0;
if (bufSize >= sizeof_through_field(COMPOUND_FILE_HEADER,
wMiniSectorShift))
{
if ((pFileHeader->wMiniSectorShift == 0) ||
(pFileHeader->wMiniSectorShift >= pFileHeader->wSectorShift))
return 0;
}
}
return 1;
}
Last edited by rivitna on Sat 14 Oct, 2017 19:52, edited 1 time in total.