Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Fast Search Engine (wfx-плагин)
Goto page Previous  1, 2, 3, 4, 5, 6 ... 18, 19, 20  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Sat Apr 14, 2007 17:59    Post subject: Reply with quote

OK

>>перед тем как выпускать, вышлю тебе для проверки.

OK
_________________
UniViewer - CudaText - LogViewer
Back to top
View user's profile Send private message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Sat Apr 14, 2007 18:04    Post subject: Reply with quote

Quote:
---Добавлено. Нет, вру. Есть одна идея для тебя. Общего плана. Я не знаю как в дельфях, но в С++ есть конструкция try/catch. Позволяет перехватывать любую ошибку в определенном куске кода. Если аналогичная конструкция есть в Дельфи, то стOит все вызовы плагинов (включая LoadLibary!) поставить внутрь такой конструкции.


Знаю. В Дельфи это есть. Применяется, Но не помогает.

Да, кстати плаг работает. Сам по себе. Так что при чем тут отличия билдов

OK, присылай новую версию
_________________
UniViewer - CudaText - LogViewer
Back to top
View user's profile Send private message
VadiMGP



Joined: 21 Mar 2007
Posts: 1625

Post (Separately) Posted: Sat Apr 14, 2007 18:51    Post subject: Reply with quote

Quote:
Да, кстати плаг работает. Сам по себе. Так что при чем тут отличия билдов
Конечно, работает. В ТС. Там где есть окно "TTOTAL_CMD". А вот если его нет... Грубо говоря в DllMain есть такой код:
Code:
if (TTOTAL_CMD_NotFound)
{
   AbortPluginLoading();
}
Вот в этой функции AbortPluginLoading и сидит тот код, который исполняется при загрузке плагина через Plugman и в разных билдах ведет себя по разному.

Но это все беллетристика. Я завтра посмотрю, где там собака порылась. Куда слать-то?
Quote:
В Дельфи это есть. Применяется, Но не помогает.
А вот это уже очень странно. Специально сейчас проверил - если плагин не желает загружаться в ТС, то ТС просто сообщает "Error loading plugin". И не валится.
Back to top
View user's profile Send private message
funduk



Joined: 16 Aug 2005
Posts: 1513
Location: Санкт-Петербург

Post (Separately) Posted: Sat Apr 14, 2007 19:22    Post subject: Reply with quote

Alextp wrote:
Применяется, Но не помогает.
Быть не может =) Или в дельфи нет конструкции, ловящей любое исключение вне зависимости от его типа?
Back to top
View user's profile Send private message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Sat Apr 14, 2007 19:42    Post subject: Reply with quote

funduk
Оно не то что **вообще не помогает. Wink
Оно не помогает в данном случае.

Там скорее всего, креш такой, что объект исключения (в Дельфи исключения есть объекты!) даже создасться не может. Такое бывает, если креш "слишком сильный".
_________________
UniViewer - CudaText - LogViewer
Back to top
View user's profile Send private message
VadiMGP



Joined: 21 Mar 2007
Posts: 1625

Post (Separately) Posted: Sat Apr 14, 2007 20:29    Post subject: Reply with quote

Quote:
Там скорее всего, креш такой,
Я присмотрелся - тут, вообще, что-то странное происходит. Plugman-то валится гораздо позже! Он благополучно сообщает, что плагин установлен, я нажимаю ОК, Plagman возвращается в основное окно (в нем видно, что плагин FSE появился в списке) и только после этого валится. Так что может все начинается с моего плагина, но падеж с этим связан весьиа косвенно.

Alextp, ты не смотрел, в тот момент когда дебаггер ловит крэш, что находится в стеке вызова?
Back to top
View user's profile Send private message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Sat Apr 14, 2007 20:44    Post subject: Reply with quote

Quote:
Plagman возвращается в основное окно (в нем видно, что плагин FSE появился в списке) и только после этого валится. Так что может все начинается с моего плагина, но падеж с этим связан весьиа косвенно.

Именно. Косвенно!

И не факт что твой плаг виноват: может, я зря сюда пишу
Quote:

Alextp, ты не смотрел, в тот момент когда дебаггер ловит крэш, что находится в стеке вызова?

Нет: я в этом не очень
_________________
UniViewer - CudaText - LogViewer
Back to top
View user's profile Send private message
VadiMGP



Joined: 21 Mar 2007
Posts: 1625

Post (Separately) Posted: Sat Apr 14, 2007 22:38    Post subject: Reply with quote

Quote:
И не факт что твой плаг виноват: может, я зря сюда пишу
Ну это философский вопрос. В данном случае мне неважно "кто виноват", важно "что делать". Smile
Я, со своей стороны, могу завтра довести свой плаг до состояния, когда падежа не будет. Вопрос - хочешь ли ты все-таки выяснить из-за чего все валится и предотвратить это на будущее. Если да - я готов помочь, чем требуется.

А если try/catch не ловит эксепшн, то с моей точки зрения, это говорит только об одном - это происходит в коде, который не находится внутри try. Ведь ТС не валится. Искать это место можно двумя способами. Первый - через стек вызовов, второй - трассировкой, отладочной печатью. В таких случаях я обычно использую вывод через OutputDebugString и утилиту DebugView.
Back to top
View user's profile Send private message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Sat Apr 14, 2007 23:18    Post subject: Reply with quote

Посмотрю стек вызовов. Завтра поставлю плаг, еще раз посмотрю.
Back to top
View user's profile Send private message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Sun Apr 15, 2007 00:34    Post subject: Reply with quote

Стек вызовов ничего не дает:
тестируем:

Quote:
1. Креш при установке Mobile.wfx, при вызове FsGetDefRootName.
При одиночной уст. этого плага все OK

Удаляем fse, пробуем снова: все OK

2. Креш неизвестно где: стек вызовов пустой.
В коде вот что:

xor eax, eax
mov [eax], ecx
push eax

То есть *полная* фигня. Запись по нулевому адресу. Откуда это.
Это уже не установка mobile.wfx, а какой-то другой плаг.

Удаляем fse, пробуем снова: все OK


Давай попробую новый build.
Back to top
View user's profile Send private message
CaptainFlint



Joined: 14 Dec 2004
Posts: 6193
Location: Москва

Post (Separately) Posted: Sun Apr 15, 2007 01:49    Post subject: Reply with quote

По просьбам трудящихся тема переименована.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
Alextp



Joined: 06 Feb 2005
Posts: 4957

Post (Separately) Posted: Sun Apr 15, 2007 11:43    Post subject: Reply with quote

Новый билд fse:
прогнал два раза: вроде все OK. Не вылетает...
_________________
UniViewer - CudaText - LogViewer
Back to top
View user's profile Send private message
VadiMGP



Joined: 21 Mar 2007
Posts: 1625

Post (Separately) Posted: Thu May 03, 2007 01:40    Post subject: Reply with quote

Выпущена версия 1.15.
Основных изменений два. Во-первых, наконец сделал диалог настроек. Во-вторых - добавлена возможность сохранять результат поиска в файл и загружать обратно.

Лежит все там же
Back to top
View user's profile Send private message
Ник



Joined: 15 Dec 2004
Posts: 1256
Location: Москва

Post (Separately) Posted: Sat Aug 18, 2007 01:36    Post subject: Reply with quote

Вопросы:
1) В диалоге настроек у меня нельзя выбрать базу + не сохраняется галка "Отдельный тред" - так и должно быть?
2) После поиска получается, что некоторых файлов в результирующем списке в реале нет - у них стоит красный крестик и размер нулевой - но в самой Locate32 при том же поиске в той же базе эти же файлы видны - да и на диске их можно найти и посмотреть.
Базу только что обновил.
Версия плагина отсюда - 1.0.0.15.
Версия программы - 3.0.7.7010.
Windows 2000 SP4, NTFS.
_________________
Xubuntu
Back to top
View user's profile Send private message
VadiMGP



Joined: 21 Mar 2007
Posts: 1625

Post (Separately) Posted: Tue Aug 21, 2007 20:54    Post subject: Reply with quote

1. В каком смысле "нельзя выбрать базу"? тоже не сохраняется? Или физически невозможно выбрать?

2. Можно как-то получить эту базу? Разумеется, вместе с примерами таких "неправильных" файлов.

Кстати, недавно вышла очередная версия Locate32. http://fileforum.betanews.com/detail/Locate/1044509669/1
В частности пофиксен очень противный баг связанный с использованием нескольких баз.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander All times are GMT + 4 Hours
Goto page Previous  1, 2, 3, 4, 5, 6 ... 18, 19, 20  Next
Page 5 of 20

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group