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 

Total Commander Edit Redirector
Goto page Previous  1, 2, 3, 4 ... 13, 14, 15  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Плагины Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
MVV



Joined: 15 Oct 2009
Posts: 4811
Location: Ростов-Дон

Post (Separately) Posted: Wed Oct 20, 2010 03:41    Post subject: Reply with quote

Koljasik wrote:
Quote:
В подробном режиме представления в зависимости от текущей локали открытие выделенных файлов может не работать. Если это произошло, пожалуйста, сообщите мне, с какой локалью это происходит.

Мой случай. Что вы подразумеваете под локалью в windows 7?
Собственно, здесь очень хорошо написано, что такое локаль.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
GGS



Joined: 02 May 2009
Posts: 322

Post (Separately) Posted: Wed Oct 20, 2010 09:54    Post subject: Reply with quote

CaptainFlint
При запуске tcer.exe получаю:
Quote:
tcer.exe - обнаружена ошибка. Приложение будет закрыто.
Приносим извинения за неудобства.

WinXP SP3+ (rus); TC 7.55a. Какие логи/дампы нужны и куда выложить?
P.S. tcer.ini - копия tcer.sample.ini (аналогично с пустым tcer.ini = 0 байт). Если удалить tcer.ini, то при запуске tcer.exe просто ничего не происходит.
P.P.S. Отчёт об ошибке, перехваченный из %TEMP%, http://zalil.ru/29840728
Back to top
View user's profile Send private message
CaptainFlint



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

Post (Separately) Posted: Wed Oct 20, 2010 12:39    Post subject: Reply with quote

Koljasik wrote:
Что вы подразумеваете под локалью в windows 7?

Что выставлено в языковых и региональных настройках Панели управления?
Скачай, пожалуйста, эту прожку:
http://flint-inc.ru/Temp/tcer_dirlist.rar
распакуй в какой-нибудь каталог, где уже есть несколько файлов, выставь Подробный режим, выдели несколько файлов (можно все) и запусти tcer_dirlist.exe. Она стащит список выделенных файлов из активной панели в том виде, в каком их отдаёт Тотал, и забросит во временный файл (%TEMP%\tcer_dirlist.log). Выложи его куда-нибудь (только не надо копипастить прямо в текст сообщения: это порушит все пробелы и табуляции, а мне именно они и важны, как раз по ним выполняется анализ и выделение имени файла).

GGS wrote:
При запуске tcer.exe получаю:
Quote:
tcer.exe - обнаружена ошибка. Приложение будет закрыто.

Попробуй сделать логи этой версией: http://flint-inc.ru/Temp/tcer_logging.rar
Скачай её и замени ей исполняемый файл. После этого сделай то же самое, что привело к крэшу, из временного каталога (%TEMP%) вытащи файл с именем tcer_trace.log и брось куда-нибудь, чтоб я мог глянуть.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
GGS



Joined: 02 May 2009
Posts: 322

Post (Separately) Posted: Wed Oct 20, 2010 14:27    Post subject: Reply with quote

CaptainFlint wrote:
Попробуй сделать логи этой версией

Сделал это на другом компе, но суть осталась (OS и TC те же). http://slil.ru/29841398
Back to top
View user's profile Send private message
CaptainFlint



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

Post (Separately) Posted: Wed Oct 20, 2010 14:58    Post subject: Reply with quote

GGS
Какие процессоры на обоих компах? Желательно с точностью до моделей или хотя бы поколений.

Попробуй эту версию:
http://flint-inc.ru/files/mlang/tcer_x32_nosse_1.0.0.0.rar
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
GGS



Joined: 02 May 2009
Posts: 322

Post (Separately) Posted: Wed Oct 20, 2010 15:32    Post subject: Reply with quote

CaptainFlint wrote:
Какие процессоры на обоих компах?

Сейчас http://ipicture.ru/uploads/101020/Bo6X2Wvg38.png
Предыдущий примерно такой же Embarassed
CaptainFlint wrote:
tcer_x32_nosse_1.0.0.0.rar

Этот работает!
Back to top
View user's profile Send private message
CaptainFlint



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

Post (Separately) Posted: Wed Oct 20, 2010 16:03    Post subject: Reply with quote

GGS
Понятно. Я компилировал с использованием SSE/SSE2, не рассчитывал, что старых процессоров используется достаточно для того, чтобы их пользователи пересеклись с TCER.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
Reflector



Joined: 29 Nov 2009
Posts: 56

Post (Separately) Posted: Wed Oct 20, 2010 16:45    Post subject: Reply with quote

CaptainFlint wrote:

Во-первых, я ненавижу STL. Хоть и мощный, но крайне неудобный в использовании (не говоря уж о километровых сообщениях об ошибках, чуть что не так). Во-вторых, я совсем не уверен, что vector сможет жить в программе сам по себе, ничего больше не затащив вместе с собой из STL. В этом случае вряд ли получится экономия. В-третьих, я разрабатывал с учётом возможного отказа от CRT, что в случае использования STL вызвало бы дополнительные проблемы.

Добавил в твой проект vector, размер бинарника вырос на 8к при том, что Array я не удалял, т.е. реально будет еще меньше. Это много? Не думаю... В чем неудобство тоже не понятно. Допустим ты пишешь:

Array<int> abc;
abc.Append(10);
if (abc.GetLength() == 0) ...

чем это код сложнее такого?

vector<int> abc;
abc.push_back(10);
if (abc.empty()) ...

Очевидно он ничем не сложнее, более функционален и при необходимости я легко могу заменить vector на list или map, собственная реализация которых была бы уже не такой простой, как твой Array. Почему для тебя это не очевидно? Видимо ты сначала изучал чистый С потому плохо знаешь С++ и его библиотеки. В частности это видно по использования таких чисто сишных особенностей, как передача void в качестве аргументов функций и использование typedef при определении структур и перечислений. Ты пишешь на С++ так, будто это С, игнорируя все рекомендации ведущих С++ программистов. К чему это приводит? К функциям на 800 строк внутри которых огромное количество мест с потенциальными утечками памяти. Например, когда прога выдает "Configuration file not found!", то утекает 2048 + 2048 + 12 + 20 + 2048 + 2048 байт памяти. Если я возьму любую ошибку выдаваемую выше нее в текущем блоке кода, а это:

Memory allocation error!
Failed to find myself
Too long INI file name!
Too long path to INI!
COMMANDER_INI variable undefined!
Too long path to myself!

то везде будут утечки памяти. Естественно ниже они буду тоже, но многих их них можно было бы избежать используя string и исключения, еще и код бы стал короче, надежнее, понятнее, ты бы не думал будут строки больше 1024 символов или нет и... Да, и бинарник бы опять стал больше, это ужасно Smile
Back to top
View user's profile Send private message
CaptainFlint



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

Post (Separately) Posted: Wed Oct 20, 2010 17:39    Post subject: Reply with quote

Reflector wrote:
Добавил в твой проект vector, размер бинарника вырос на 8к при том, что Array я не удалял, т.е. реально будет еще меньше. Это много? Не думаю...

Не много. Но зачем, если можно без? Преимуществ перед моим решением я пока не вижу.

Reflector wrote:
В чем неудобство тоже не понятно.

Я говорил не конкретно про vector, а про STL в целом. Мне его сверх-навороченные шаблоны не нравятся. То, что vector в данном случае достаточно прост и может обходиться без сверх-наворотов — всего лишь счастливая случайность.

Reflector wrote:
Очевидно он ничем не сложнее, более функционален и при необходимости я легко могу заменить vector на list или map, собственная реализация которых была бы уже не такой простой, как твой Array.

А оно надо? Я ещё раз повторяю: моя цель — максимальная компактность и производительность. Чтобы программа запускалась и выполнялась реактивно, чтобы пользователь не успел сменить каталог или нажать лишний пробел, изменив список выделенных файлов до того момента, как программа их успеет из Тотала выдрать. Вот зачем мне прямо сейчас сдался map или list? Дадут они мне большую производительность, чем даёт сейчас мой Array? Что я получу за эти восемь килобайт, кроме осознания того, что я, такой крутой программист, умею использовать стандартные библиотеки вместо изобретания велосипедов?

Reflector wrote:
Почему для тебя это не очевидно? Видимо ты сначала изучал чистый С потому плохо знаешь С++ и его библиотеки.

Знать библиотеки и использовать их — несколько разные вещи, не находишь? Я не вижу смысла пихать в каждый из своих проектов все мыслимые плюсовые навороты только из-за того, что они существуют в природе. Я использую то, что считаю нужным и тогда, когда считаю нужным.

Reflector wrote:
В частности это видно по использования таких чисто сишных особенностей, как передача void в качестве аргументов функций и использование typedef при определении структур и перечислений.

void генерирует Студия при создании класса. Я решил лишь следовать этому шаблону, только и всего. typedef остались от копипаста из системных H-файлов, которые рассчитаны на C. Да, каюсь, забыл привести в более "плюсовый" вид… Сам не люблю typedef'ы для структур.

Reflector wrote:
Например, когда прога выдает "Configuration file not found!", то утекает 2048 + 2048 + 12 + 20 + 2048 + 2048 байт памяти.

Это осознанный шаг, документированный в коде. Описанная тобой утечка — не утечка, потому что программа завершает выполнение, и память автоматически освобождается системой. Если кто-то захочет использовать код в другом проекте, где при возникновении ошибок процесс не завершается, эту ситуацию надо будет разруливать. Я об этом знаю, я об этом предупреждаю в коде. Предпринимать со своей стороны дополнительные шаги, потенциально влияющие на скорость выполнения кода, считаю в данном конкретном случае излишним.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
Koljasik



Joined: 13 Nov 2007
Posts: 59
Location: СПб

Post (Separately) Posted: Thu Oct 21, 2010 04:53    Post subject: Reply with quote

CaptainFlint wrote:
Что выставлено в языковых и региональных настройках Панели управления?

Россия, Русский, естественно.

tcer_dirlist.log
Back to top
View user's profile Send private message
CaptainFlint



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

Post (Separately) Posted: Thu Oct 21, 2010 10:27    Post subject: Reply with quote

Koljasik
А, шоб ему… Sad Совершенно забыл, что размер может быть с единицами указан, а не в байтах. Подумаю, как это можно исправить.

Спасибо за лог.
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
Den_Klimov



Joined: 03 Nov 2006
Posts: 207
Location: Ukraine.Kiev

Post (Separately) Posted: Sun Oct 31, 2010 02:16    Post subject: Reply with quote

Вижу несмотря на то что я пропал [работа волк, догоняет и кусает, не убежишь Sad ] тут процесс вовсю кипит. Smile
Back to top
View user's profile Send private message
ask-rus



Joined: 10 Nov 2009
Posts: 2076
Location: Russian Federation

Post (Separately) Posted: Sun Oct 31, 2010 09:55    Post subject: Reply with quote

CaptainFlint wrote:
Поддерживаются все режимы представления, кроме эскизов.

А в чем фишка? Из чего исходил? Ведь если файлы в эскизах нельзя послать редактору, "перенаправлялка" кажется неполноценной.
_________________
«Минимализм - это кратчайший путь бесконечного стремления к идеалу»
«Не бойся, что не знаешь, - бойся, что не учишься» Китайская пословица
Back to top
View user's profile Send private message
CaptainFlint



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

Post (Separately) Posted: Sun Oct 31, 2010 11:29    Post subject: Reply with quote

ask-rus wrote:
А в чем фишка?

В особенностях работы Тотала. В режиме эскизов нет возможности получить из внешней программы список выделенных файлов в панели Тотала (во всяком случае, я его не нашёл). Единственный способ — запускать программу не как редактор, а как стороннее приложение с параметром %L, но этот способ несовместим с остальными сценариями работы редактора, в частности — с открытием файлов на редактирование из архивов, с FTP, из FS-плагинов.

Теоретически, можно было бы сделать следующее: если включён режим эскизов, автоматически послать в Тотал команду, запускающую внешнюю прогу с %L, а та прога уже распарсит список и запустит редакторы. Но тут возникает сразу несколько сложностей. Во-первых, я пока не нашёл способа отличить режим эскизов от прочих. Во-вторых, режим эскизов может быть включён и в архиве, а там %L не работает. В-третьих, двойной запуск программы — двойная задержка, пользователь может успеть сменить каталог или поменять выделение, не подозревая, что программа ещё только-только в процессе запуска. В-четвёртых, для подобного действия необходимо предварительно создать в Тотале EM-команду, которая запускала бы этот редактор, т.к. передать произвольной программе %L не получится (это, конечно, не страшно, но установка редиректилки становится нетривиальной, а ридми ж почти никто не читает).
_________________
Почему же, ё-моё, ты нигде не пишешь "ё"?
Back to top
View user's profile Send private message
Avada



Joined: 01 Aug 2008
Posts: 10235
Location: Россия, Саратов

Post (Separately) Posted: Sun Oct 31, 2010 11:43    Post subject: Reply with quote

ask-rus
К сказанному CaptainFlint хочу добавить, что в силу вышесказанного с режимом эскизов не справляются и другие аналогичные программы. F4Menu, скажем, честно сообщает, что режим эскизов не поддерживается, а ChoiceEditor молча игнорирует выделение и открывает в редакторе только файл под курсором.
_________________
Даже самая богатая фантазия
Не представит себе наши безобразия.
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 ... 13, 14, 15  Next
Page 3 of 15

 
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