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 

Определить разрядность запущенного TC
Goto page Previous  1, 2, 3, 4, 5, 6, 7, 8, 9  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Mellomann



Joined: 07 Sep 2009
Posts: 709

Post (Separately) Posted: Tue Jan 24, 2012 15:42    Post subject: Reply with quote

Если для неё - так и ладно, оставить только 32, как универсальную, ибо sfx ей можно приставлять любые, которые только найдутся, а памяти сверх 4 гигов и постоянного доступа в system32\ ей точно не нужно. В остальном преимущества х64 закончились.

Хотя, можно последовать примеру моей конфиги, добавляя обе версии, но для х64 и х32 использовать переключаемый бар, и просто навешивая нужную версию на нужный бар.

Flasher wrote:
топики читать надо..

Читал, но не заметил, извиняюс...
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jan 24, 2012 15:44    Post subject: Reply with quote

gora wrote:
Привязка к версии системы крайне не желательна. Скрипт должен работать на Win XP и выше любой разрядности.
Я не о работе, а о приёме. Мы же уже задейтсвуем один приём. Вот я и спрашиваю, объединить в указанный или отставить старый, добавив ещё один только для XP.
Back to top
View user's profile Send private message
gora



Joined: 30 Dec 2004
Posts: 442
Location: Иваново

Post (Separately) Posted: Tue Jan 24, 2012 16:02    Post subject: Reply with quote

Flasher wrote:
Вот я и спрашиваю, объединить в указанный или отставить старый, добавив ещё один только для XP.

К сожалению, понять этой фразы не смог. Что мне надо, я уже описал в ветке несколько раз, способы, методы, приемы и т.д, определяете Вы, главное - 100% результат работы скрипта во всех, неоднократно упомянутых в ветке, условиях.
_________________
Win7 SP1 Ultimate x64, TC8.52a x64
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jan 24, 2012 16:21    Post subject: Reply with quote

gora
Тогда, не заморачиваясь, берём по-простому, глобально. Подправил.
Back to top
View user's profile Send private message
Samwatas



Joined: 12 Sep 2009
Posts: 95

Post (Separately) Posted: Tue Jan 24, 2012 19:10    Post subject: Reply with quote

Ну вот, я писал-писал сегодня, а это оказывается уже не нужно (мой скрипт определяет и путь к тоталу, и разрядность).

 !  Avada:
Несколько дальнейших постов того же посетителя были им впоследствии "отредактированы" путём полного убирания содержания. Последствия для логики дальнейшего обсуждения очевидны. Соответствующие посты удалены, комментарии даны в ЛС.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jan 24, 2012 19:19    Post subject: Reply with quote

Samwatas
Да как же не нужно? Мне нужно.
Flasher wrote:
Я бы тоже непрочь увидеть (вместе с определением пути, конечно).
Smile
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jan 24, 2012 20:23    Post subject: Reply with quote

Samwatas
Судя по размеру моего скрита и "На AutoIt это сделать гораздо проще." не вижу смысла в компиляции. Просьба выложить код.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jan 24, 2012 20:52    Post subject: Reply with quote

Жестоко. Mr. Green Аж 6 библиотек..
Спасибо, тяжеловатенько, конечно. Т.е. гораздо проще оказалось у меня в итоге. Ну, ничего, зато полезно освоить. Smile
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jan 24, 2012 22:15    Post subject: Reply with quote

Samwatas wrote:
Во вторых, я поднимаюсь по дереву родительских процессов на любую высоту (а не фиксированную).
В третих, при поиске тоталовского процесса я не ориентируюсь ни на имя екзешника (который очень легко изменить), ни на заголовок окна (по тем же причинам)
Я тоже. Smile
Samwatas wrote:
ни на размер екзешника (UPX тоже никто не отменял).
Так UPX на сжатие, а я проверяю по большему, а не по меньшему. Wink
Samwatas wrote:
Ну и подводя итоги, для решения этой задачи можно написать приложение на чистом С/С++ (результат получится гарантированно и быстрее, и меньше по размеру).
И не только на C++. Мой скрипт весит 1 Кб. Smile
Back to top
View user's profile Send private message
Samwatas



Joined: 12 Sep 2009
Posts: 95

Post (Separately) Posted: Tue Jan 24, 2012 22:30    Post subject: Reply with quote

А что делает эта строка:
Code:
Do Until StrComp(Left(Name, 8), "totalcmd", 1) = 0 And StrComp(FSO.GetExtensionName(Name), "exe", 1) = 0

И что будет, если я изменю имя экзешника (и строка "totalcmd" будет отсутствовать вообще).
Если размер екзешника < 7 MB - это:
32битный тотал (несжатый) или 64битный тотал (сжатый)?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jan 24, 2012 22:35    Post subject: Reply with quote

Samwatas wrote:
А что делает эта строка:
Ту самую проверку на бесконечную глубину, пока не найдёт exe-шник с нужным именем.
Samwatas wrote:
И что будет, если я изменю имя экзешника (и строка "totalcmd" будет отсутствовать вообще).
Подразумевается, что такими исправлениями имени никто не воспользуется. Это несколько странно. А как же ты определяешь, что это тот самый Тотал?

Samwatas wrote:
Если размер екзешника < 7 MB - это:
32битный тотал (несжатый) или 64битный тотал (сжатый)?
А разве есть x64 сжатый? Вроде Гислер отказался выпускать в таком виде. Последняя версия - 7.56a.

Last edited by Flasher on Wed Jan 25, 2012 00:49; edited 1 time in total
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jan 24, 2012 23:04    Post subject: Reply with quote

Samwatas wrote:
Я уже отвечал выше:
Не видел. Хм. Пойду искать, как получить класс окна, сомневаюсь, что найду...

Samwatas wrote:
У меня такой вопрос - если запустить 32б тотал из 64б тотала, то куда будет указывать %COMMANDER_PATH%?
Не знаю, под рукой нет 64.
Back to top
View user's profile Send private message
gora



Joined: 30 Dec 2004
Posts: 442
Location: Иваново

Post (Separately) Posted: Tue Jan 24, 2012 23:18    Post subject: Reply with quote

Flasher, спасибо.
Замечание Samwatas, на счет изменение имени, справедливо. И если принять за основу, что файл НЕ переименован, то незачем тестировать размер, ибо оригинальное имя уже несет информацию о разрядности. А если он все же переименован, то скрипт зависает (проверено).
Samwatas wrote:
У меня такой вопрос - если запустить 32б тотал из 64б тотала, то куда будет указывать %COMMANDER_PATH%?
Всегда показывает на последний ТС из которого и произведен запуск команды проверки, например из ком. строки :
Code:
echo %COMMANDER_PATH%

_________________
Win7 SP1 Ultimate x64, TC8.52a x64
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Tue Jan 24, 2012 23:21    Post subject: Reply with quote

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



Joined: 30 Dec 2004
Posts: 442
Location: Иваново

Post (Separately) Posted: Tue Jan 24, 2012 23:28    Post subject: Reply with quote

Flasher wrote:
Преполагалось, что переименование может быть адекватным, т.е. убор 64 на конце.

Это сомнительно. Адекватно - это не переименовывать, а уж если предполагать переименование, то любое.

Добавлено спустя 5 минут:

Если предполагать, что пользователь не должен менять оригинальное имя и отбросить первые 9 бет версии x64 (ибо для версии x86 это значения не имеет), то вся задача решается батником в 10 строк.
_________________
Win7 SP1 Ultimate x64, TC8.52a x64
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, 7, 8, 9  Next
Page 7 of 9

 
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