CudaLister (просмотр исходников)

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

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

Аватара пользователя
Plumber
Сообщения: 121
Зарегистрирован: Пн окт 27, 2008 19:43

Сообщение Plumber »

CudaLister 1.8.5.9
У меня тестовая сборка ТС в имени содержит кирилицу (TC11-в), после запуска плагина INI оказался в совершенно другой папке (TC11-�)
ЕМНИП, я уже как-то сообщал об этом баге.
ProgMan13
Сообщения: 341
Зарегистрирован: Ср авг 19, 2009 16:07

Сообщение ProgMan13 »

Ini в папке с локальными символами можно обойти так:

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

procedure ListSetDefaultParams(dps: pListDefaultParamStruct); stdcall;
var
  B: TBytes;
begin
  B := nil;
  SetLength(B, StrLen(dps^.DefaultIniName));
  if Length(B) > 0 then
  begin
    Move(dps^.DefaultIniName[0], Pointer(B)^, Length(B));
    ListerIniFilename:= TEncoding.ANSI.GetAnsiString(B);
  end;
end;
Чтобы плагин не падал (в примере с падением в QuickView), нужно убирать Application.ProcessMessages.
Для теста можно поменять на CheckSynchronize, но по файлам в режиме QuickView "пробежаться" не удастся. Для начала можно начинать раскраску по таймеру.
Аватара пользователя
AlexTP1
Сообщения: 46
Зарегистрирован: Сб июл 27, 2024 21:39

Сообщение AlexTP1 »

нужно убирать Application.ProcessMessages.
App.ProcessMеssages нужен. Чтобы продолжать выполнение нити (треда) в которой идет парсинг.
Пока не знаю что делать с падениями.
Ответить