Как повлиять на отображение файла в Viewer-e
Как повлиять на отображение файла в Viewer-e
Я думал о написании плагина который бы позволил мне делать базовые преобразования отображаемого файла, такие как +/-/xor заданной константы. Например, у меня есть файл замаскированный XOR C1. Возможно ли написать плагин который бы делал XOR C1 на лету, и отображал результат в Viewere?
Т.к. это 1-к-1 трансформация, я думал может можно через систему кодировок это сделать, но не уверен что даже это возможно.
Пож. посоветуйте, я совсем чайник в фаровском API..
Т.к. это 1-к-1 трансформация, я думал может можно через систему кодировок это сделать, но не уверен что даже это возможно.
Пож. посоветуйте, я совсем чайник в фаровском API..
- HaRT
- Moderator
- Posts: 10806
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 220 times
- Been thanked: 357 times
Re: Как повлиять на отображение файла в Viewer-e
А почему Вы хотите изменять содержимое именно в просмотрщике?
Почему бы просто не вызывать прямо Ваш плагин из панелей, чтобы он как угодно расшифровал файл и уже после этого показал его в просмотрщике или даже редакторе (в этом случае с возможностью обратной зашифровки обновлённой версии)?
Почему бы просто не вызывать прямо Ваш плагин из панелей, чтобы он как угодно расшифровал файл и уже после этого показал его в просмотрщике или даже редакторе (в этом случае с возможностью обратной зашифровки обновлённой версии)?
Фар есть инструмент, а не нянька. © 2009 DrKnS
- John Doe
- Бюрократ
- Posts: 13801
- Joined: Wed 27 Apr, 2005 20:42
- Has thanked: 72 times
- Been thanked: 425 times
- Contact:
Re: Как повлиять на отображение файла в Viewer-e
Можно, почему нет, и апи никакого не нужно. Для этого проще использовать фар 1.75.rustyx wrote:Т.к. это 1-к-1 трансформация, я думал может можно через систему кодировок это сделать, но не уверен что даже это возможно.
Re: Как повлиять на отображение файла в Viewer-e
Как? И почему проще 1.75? Я бы хотел в 3.0.John Doe wrote:Можно, почему нет, и апи никакого не нужно. Для этого проще использовать фар 1.75.
Re: Как повлиять на отображение файла в Viewer-e
Тоже вариант, спасибо, попробую.HaRT wrote:Почему бы просто не вызывать прямо Ваш плагин из панелей, чтобы он как угодно расшифровал файл и уже после этого показал его в просмотрщике или даже редакторе (в этом случае с возможностью обратной зашифровки обновлённой версии)?
- Tim Sobolev
- Posts: 729
- Joined: Fri 01 Apr, 2005 14:46
- Location: Украина
- Has thanked: 1 time
- Been thanked: 7 times
Re: Как повлиять на отображение файла в Viewer-e
В 1.75 можно вручную задать таблицу кодировки, построив её по нужному вам правилу , что и позволит сразу смотреть преобразованный файл.rustyx wrote:Как? И почему проще 1.75?John Doe wrote:Можно, почему нет, и апи никакого не нужно. Для этого проще использовать фар 1.75.
(сама таблица кодировки представляет собой таблицу из 256 байт, позиция каждого байта соответствует начальному значению, значение этого байта -- преобразованному значению)
В 3.0 берутся только системные таблицы кодировокrustyx wrote:Я бы хотел в 3.0.
Как повлиять на отображение файла в Viewer-e
Ну, например, в режиме QUICKVIEW иногда хотелось бы (см.п.3), чтобы плагин имел возможность отображать "свои" файлы особым образом.HaRT wrote:А почему Вы хотите изменять содержимое именно в просмотрщике?
Кто-нибудь может подсказать как это правильно сделать в текущей версии API?
Конечно, идеологически правильно, наверное, было бы дергать AnalyseW, но этого не происходит...
А ProcessViewerEventW - не вариант, по-моему.
Как повлиять на отображение файла в Viewer-e
Ну, это-то понятно. Только вот ни AnalyseW, ни OpenW, ни что-либо другое, чему передается OpMode,zg wrote:OPM_QUICKVIEW.
похоже в данной ситуации не вызывается (
Или я чего-то недопонимаю?
- zg
- zero-gravity
- Posts: 6015
- Joined: Tue 15 Mar, 2005 17:36
- Location: riga
- Been thanked: 185 times
- Contact:
Как повлиять на отображение файла в Viewer-e
это если «свои файлы» — это файлы на панели плагина. а так — никак.
Как повлиять на отображение файла в Viewer-e
С файлами на панели плагина все понятно - там GetFilesW вызывается.zg wrote:это если «свои файлы» — это файлы на панели плагина.
Жаль.zg wrote:а так — никак.
А что мешает AnalyseW -> OpenW вызывать? Это ж, вроде, идеологически правильно было бы?
- zg
- zero-gravity
- Posts: 6015
- Joined: Tue 15 Mar, 2005 17:36
- Location: riga
- Been thanked: 185 times
- Contact:
Как повлиять на отображение файла в Viewer-e
то что эти функции предназначены для другого?stasf wrote:А что мешает AnalyseW -> OpenW вызывать?
Как повлиять на отображение файла в Viewer-e
Ну почему же для другого?zg wrote:то что эти функции предназначены для другого?stasf wrote:А что мешает AnalyseW -> OpenW вызывать?
Если пользователь открыль панель Quick View, значит он хочет "заглянуть внутрь" каждого из выбираемых им файлов.
Операция "заглянуть внутрь" - как раз то, что обеспечивают плагины, экспортирующие AnalyseW.
- zg
- zero-gravity
- Posts: 6015
- Joined: Tue 15 Mar, 2005 17:36
- Location: riga
- Been thanked: 185 times
- Contact:
Как повлиять на отображение файла в Viewer-e
пользователь нажал ctrlq на zip-архиве. arqlite вернул из AnalyseW хэндл. что должно произойти дальше?
Как повлиять на отображение файла в Viewer-e
Теоретически, можно было бы вызвать OpenW с OPM_QUICKVIEW.
Но это приведет к проблемам совместимости.
Поэтому, лучше реализовать вызов новой экспортируемой функции (QuickGetW или QuickOpenW) с параметром типа OpenAnalyseInfo.
При этом, по-видимому, в структуру OpenAnalyseInfo (или в AnalyseInfo) придется добавить ссылку на GetFilesInfo, чтобы плагину было куда отписать свой Qiuck View.
Но это приведет к проблемам совместимости.
Поэтому, лучше реализовать вызов новой экспортируемой функции (QuickGetW или QuickOpenW) с параметром типа OpenAnalyseInfo.
При этом, по-видимому, в структуру OpenAnalyseInfo (или в AnalyseInfo) придется добавить ссылку на GetFilesInfo, чтобы плагину было куда отписать свой Qiuck View.