Registry плагин

Обсуждение только плагинов и утилит для Total Commander.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

Аватара пользователя
Виталий Князев
Сообщения: 97
Зарегистрирован: Вс дек 19, 2004 15:17
Откуда: Лондон

Сообщение Виталий Князев »

790 писал(а):Извините, я не следил за прошлыми версиями плагина.
Откуда вообще берётся проблема с такими строковыми параметрами, когда там указан путь к файлу? типа вот:

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

[HKEY_CURRENT_USER\Software\Microsoft\Windows\ShellNoRoam\MUICache]
"D:\\TotalCMD\\TOTALCMD.EXE"="Total Commander 32 bit"
Или нужно конвертировать спецсимволы и тогда будет вид:
D[colon][bslash]TotalCMD[bslash]TOTALCMD[dot]EXE
или иначе показывает один файл.ехе и всё, никаких значений и никакой возможности изменения.
Может можно как-то подменять спецсимволы... ими же?
Ответ очевиден - TC трактует спецсимволы как часть полного пути и обрабатывает их соответственно. В данном примере "имя файла" рассматривается как "путь" + "имя файла". Если бы был какой-нибудь символ псевдографики выглядящий как \ можно было бы попробовать, но я о таких не знаю.

В целом, TC API очень ограничен в разделении каталогов и файлов - некоторые функции API не предоставляют никаких средств вообще чтобы можно было отличить файл от каталога. Так, например, если в одном каталоге есть файл с именем "123" и каталог с именем "123", то будут "глючить" дополнительные колонки. В данном примере TC передаёт только путь и однозначно определить ключ это или значение не представляется возможным. Тут поможет только расширение API.
TC 8.01, x64
Аватара пользователя
Виталий Князев
Сообщения: 97
Зарегистрирован: Вс дек 19, 2004 15:17
Откуда: Лондон

Сообщение Виталий Князев »

Обновил.
Пока известна только одна проблема - в результате поиска пустые строки содержат случайное значение.

v 4.2 - 11.08.2009
- Добавлено: Открытие диалога поиска из GUI в добавок к командной строке
- Добавлено: Запоминание предыдущего поиска, текст и пути (пока только на время жизни процесса TC)
- Добавлено: Поиск по заданному ключу
- Добавлено: Возможность убрать интерфейс подключения к удалённому реестру
- Исправлено: Звук ошибки при отмене создания значения по F7
- Исправлено: Не работал переход к найденному ключу в TC до 7.5
- Исправлено: Отображение значений в результате поиска даже когда совпадает только имя значения
- Исправлено: Падение при поиске короткой строки если до этого был поиск длинной строки
- Изменилось: Разделил настройки иконок ключей и значений
- Изменилось: Обновлён перевод на украинский язык
- Изменилось: Обновлён перевод на испанский язык
TC 8.01, x64
Аватара пользователя
SUKER
Сообщения: 49
Зарегистрирован: Пт дек 17, 2004 11:15
Откуда: Санкт-Петербург

Сообщение SUKER »

Поставил 4.2:
постоянный Access violation при выходе на уровень вверх из плагина(в сетевое окружение). Или при нажатии ок в настройках плагина:
---------------------------
Total Commander
---------------------------
Access violation at address 00402F5F. Read of address 00009D98.
Please report this error to the Author,
with a description of what you were doing when this error occured!
Continue execution?
---------------------------
Да Нет
---------------------------

Тс 7.04a.
Аватара пользователя
Виталий Князев
Сообщения: 97
Зарегистрирован: Вс дек 19, 2004 15:17
Откуда: Лондон

Сообщение Виталий Князев »

SUKER писал(а):Поставил 4.2:
постоянный Access violation при выходе на уровень вверх из плагина(в сетевое окружение). Или при нажатии ок в настройках плагина:
---------------------------
Total Commander
---------------------------
Access violation at address 00402F5F. Read of address 00009D98.
Please report this error to the Author,
with a description of what you were doing when this error occured!
Continue execution?
---------------------------
Да Нет
---------------------------

Тс 7.04a.
Спасибо, исправил в 4.3
Как мне дорог TC 7.04...
TC 8.01, x64
Аватара пользователя
Виталий Князев
Сообщения: 97
Зарегистрирован: Вс дек 19, 2004 15:17
Откуда: Лондон

Сообщение Виталий Князев »

Обновил

v 4.3 - 11.08.2009
- Исправлено: Падение в TC 7.04
- Исправлено: Регистр результатов поиска (имя значения и данные)
- Исправлено: Случайные значения в колонке данных когда реальное значение пусто
TC 8.01, x64
Аватара пользователя
SUKER
Сообщения: 49
Зарегистрирован: Пт дек 17, 2004 11:15
Откуда: Санкт-Петербург

Сообщение SUKER »

Вот это оперативность :shock:
Спасибо - все работает.
790
Сообщения: 357
Зарегистрирован: Сб авг 09, 2008 18:08

Сообщение 790 »

Виталий Князев
При правке настроек плагина из TC Plagins Manager 2.1.0.1, после нажатия ОК, получаем ошибку: [ Инструкция по адресу "..." обратилась к памяти по адресу "...". память не может быть "written" ].
TC 11.58 32/64, Win10x64

Cuda уехал text, он был ещё вчераа...
Аватара пользователя
Виталий Князев
Сообщения: 97
Зарегистрирован: Вс дек 19, 2004 15:17
Откуда: Лондон

Сообщение Виталий Князев »

790 писал(а):Виталий Князев
При правке настроек плагина из TC Plagins Manager 2.1.0.1, после нажатия ОК, получаем ошибку: [ Инструкция по адресу "..." обратилась к памяти по адресу "...". память не может быть "written" ].
И? Где падает-то? Если в этой тулсине, то я тут ни при чём.
TC 8.01, x64
790
Сообщения: 357
Зарегистрирован: Сб авг 09, 2008 18:08

Сообщение 790 »

не, плагин не падает и настройки тоже меняются нормально, и "тулсина" эта тоже не падает :lol: ... вот только это сообщение выскакивает.
А до версии 4.3 такого не было...
TC 11.58 32/64, Win10x64

Cuda уехал text, он был ещё вчераа...
Аватара пользователя
Виталий Князев
Сообщения: 97
Зарегистрирован: Вс дек 19, 2004 15:17
Откуда: Лондон

Сообщение Виталий Князев »

790 писал(а):не, плагин не падает и настройки тоже меняются нормально, и "тулсина" эта тоже не падает :lol: ... вот только это сообщение выскакивает.
А до версии 4.3 такого не было...
На самом деле падает Config.exe являющийся частью TC Plugins Manager, там баг. Падает из-за того что я меняю значение параметра RemoteName в FsExecuteFile. Это вполне валидная операция и сам TC вполне happy на этот счёт. Но, видимо, в TC Plugins Manager в вызывающем коде это всего лишь маленькая константа ("") и записывать туда нельзя - размер буфера недостаточен.

Тем не менее, я реализовал workaround, в 4.4 падать не будет.
TC 8.01, x64
Аватара пользователя
Виталий Князев
Сообщения: 97
Зарегистрирован: Вс дек 19, 2004 15:17
Откуда: Лондон

Сообщение Виталий Князев »

Обновил

v 4.4 - 17.08.2009
- Добавлено: Поиск по всем типам значений
- Добавлено: Двоичный поиск
- Добавлено: Сохранение истории поиска (20 штук)
- Добавлено: Перевод на немецкий
- Изменилось: Оптимизирована производительность поиска
- Исправлено: Корректная обработка бага в TC Plugin Manager
- Исправлено: Редактирование значений со спецсимволами (в результате поиска)
TC 8.01, x64
Den_Klimov
Сообщения: 207
Зарегистрирован: Пт ноя 03, 2006 11:27
Откуда: Ukraine.Kiev

Сообщение Den_Klimov »

Моя в восторге. :)
790
Сообщения: 357
Зарегистрирован: Сб авг 09, 2008 18:08

Сообщение 790 »

4.4 ... такое вот дело...
Отключаем в настройках Show -Add Value- file,
Копируем по F5 раздел с кучей под-разделов,
и получаем в получателе ПАПКУ с вложеными папками, а не reg-файл.
Возвращаем на место -Add Value- и всё нормально, всё копируется в общий reg , как и нужно.

Прочие настройки:
ExportUNICODE=1
ExportWithTimestamp=0
ExportBinary=0
ShowAddValueFile=0
SpecialSymbolsConversion=1
ShowExportSetup=0
ExportToSingleFile=1
ShowExportSetupSingleFile=0
LastRemoteHost=
Language=Russian.lng
AdditionalColumns=1
ShowExportProgress=0
ShowRealStringSize=0
ShowSizeSuffix=1
ExpandedIconSet=0
ImprovedKeyIcon=1
AllowRemoteConnections=0
ShowSearchFile=0

------------------------
P.S. У меня в настройках колонок для плагина стоит только ИМЯ и ЗНАЧЕНИЕ (большего не нужно пока). В обычном режиме сортировка по ТИПу. После юзания плагина и возврата к колонкам обычных файлов/папок, происходит переключение на сортировку по ИМЕНИ. Это не всегда происходит, но после чего именно - пока ещё не уловил.
TC 11.58 32/64, Win10x64

Cuda уехал text, он был ещё вчераа...
Аватара пользователя
Виталий Князев
Сообщения: 97
Зарегистрирован: Вс дек 19, 2004 15:17
Откуда: Лондон

Сообщение Виталий Князев »

790 писал(а):4.4 ... такое вот дело...
Отключаем в настройках Show -Add Value- file,
Копируем по F5 раздел с кучей под-разделов,
и получаем в получателе ПАПКУ с вложеными папками, а не reg-файл.
Возвращаем на место -Add Value- и всё нормально, всё копируется в общий reg , как и нужно.

Прочие настройки:
ExportUNICODE=1
ExportWithTimestamp=0
ExportBinary=0
ShowAddValueFile=0
SpecialSymbolsConversion=1
ShowExportSetup=0
ExportToSingleFile=1
ShowExportSetupSingleFile=0
LastRemoteHost=
Language=Russian.lng
AdditionalColumns=1
ShowExportProgress=0
ShowRealStringSize=0
ShowSizeSuffix=1
ExpandedIconSet=0
ImprovedKeyIcon=1
AllowRemoteConnections=0
ShowSearchFile=0
Спасибо, гляну
790 писал(а): P.S. У меня в настройках колонок для плагина стоит только ИМЯ и ЗНАЧЕНИЕ (большего не нужно пока). В обычном режиме сортировка по ТИПу. После юзания плагина и возврата к колонкам обычных файлов/папок, происходит переключение на сортировку по ИМЕНИ. Это не всегда происходит, но после чего именно - пока ещё не уловил.
Это проблема TC, плагин не контролирует сортировку дополнительных колонок, а TC меняет её в зависимости от фазы луны...
TC 8.01, x64
Аватара пользователя
Виталий Князев
Сообщения: 97
Зарегистрирован: Вс дек 19, 2004 15:17
Откуда: Лондон

Сообщение Виталий Князев »

790 писал(а):4.4 ... такое вот дело...
Отключаем в настройках Show -Add Value- file,
Копируем по F5 раздел с кучей под-разделов,
и получаем в получателе ПАПКУ с вложеными папками, а не reg-файл.
Возвращаем на место -Add Value- и всё нормально, всё копируется в общий reg , как и нужно.
Я сделал кое-какие улучшения, но совсем избавиться от проблемы не удалось. Когда в ключе и подключах нет ни одного значения, TC даже не вызывает функцию плагина - просто создаёт пустые каталоги.
Поэтому для корректной работы (чтобы плагин мог всё подчистить за TC) необходимо как минимум одно значение, пусть даже виртуальное, как -Add Value- или -Find-.
TC 8.01, x64
Ответить