Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.
Модераторы: Avada , CaptainFlint , Nik , d-view , Моторокер
gora
Сообщения: 442 Зарегистрирован: Чт дек 30, 2004 13:09
Откуда: Иваново
Сообщение
gora » Чт янв 19, 2012 10:47
Батник будет запускаться из запущенного ТС версий 7 или 8.
Как с помощью батника определить разрядность (х86 или х64) того ТС, из которого произведен запуск батника с учетом того, что обе версии (х86 и х64) TC могут быть запущены одновременно?
[mod="Avada"]Подфорум для запроса выбран неудачно. Перенесено в "Автоматизацию".[/mod]
Win7 SP1 Ultimate x64, TC8.52a x64
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Чт янв 19, 2012 10:54
Так базовое имя у TC8x64 с "64" на конце. Соответственно, по %COMMANDER_EXE% из 8-ки (начиная с pb10) и определять. На 7-ке переменная будет отсутствовать, значит, разрядность - 32. На vbs можно ещё одним способом.
gora
Сообщения: 442 Зарегистрирован: Чт дек 30, 2004 13:09
Откуда: Иваново
Сообщение
gora » Чт янв 19, 2012 11:22
Flasher писал(а): начиная с pb10
Вот здесь я и застрял! А если у пользователя более ранняя бета и он не удосужился ее обновить?
Flasher писал(а): На vbs можно ещё одним способом
Можно увидеть реализацию?
Win7 SP1 Ultimate x64, TC8.52a x64
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Чт янв 19, 2012 11:29
gora писал(а): А если у пользователя более ранняя бета и он не удосужился ее обновить?
А, т.е. это не для себя делается. Тогда на cmd пока не знаю как. Можно в комментарии написать условие про минимальность версии.
gora писал(а): Можно увидеть реализацию?
Я
тут несколько дней назад предлагал протестировать скрипт. В нём на 49 строке есть ответ.
Если поддержка в тестах будет, даю полноценный ответ.
gora
Сообщения: 442 Зарегистрирован: Чт дек 30, 2004 13:09
Откуда: Иваново
Сообщение
gora » Чт янв 19, 2012 11:38
Flasher писал(а): есть ответ
А БЕЗусловный ответ получить нельзя?
Win7 SP1 Ultimate x64, TC8.52a x64
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Чт янв 19, 2012 11:40
gora писал(а): А БЕЗусловный ответ получить нельзя?
Можно, но сложно. Пока лень писать реализацию. А кому-то, видимо, лень тестировать. У каждого своё.
В коде того скрипта "ответ" неполноценный, скомканный, там есть ненужные завязки.
Кстати, сюда же можно подключить и проверку системы на битность, будет вообще оптимал.
gora
Сообщения: 442 Зарегистрирован: Чт дек 30, 2004 13:09
Откуда: Иваново
Сообщение
gora » Чт янв 19, 2012 12:05
Flasher писал(а): Можно, но сложно.
Ясно
Flasher писал(а): проверку системы на битность, будет вообще оптимал
Такая переменная у меня есть и без скрипта, кстати ее легко получить и батником.
Win7 SP1 Ultimate x64, TC8.52a x64
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Чт янв 19, 2012 12:11
gora писал(а): кстати ее легко получить и батником.
Только батник в vbs подвязывать как-то неахти. И как реализуется? Проверкой на существование папки PF? У меня более универсальный метод.
gora
Сообщения: 442 Зарегистрирован: Чт дек 30, 2004 13:09
Откуда: Иваново
Сообщение
gora » Чт янв 19, 2012 12:14
Flasher писал(а): как реализуется?
Код: Выделить всё
Set xOS=x86& If Defined PROCESSOR_ARCHITEW6432 (Set xOS=x64) Else If "%PROCESSOR_ARCHITECTURE%"=="AMD64" Set xOS=x64
Win7 SP1 Ultimate x64, TC8.52a x64
gora
Сообщения: 442 Зарегистрирован: Чт дек 30, 2004 13:09
Откуда: Иваново
Сообщение
gora » Чт янв 19, 2012 12:28
Flasher писал(а): дык.
И что? Моя строка прекрасно работает и из-под ТС, и без него. Всегда определяет правильно.
Win7 SP1 Ultimate x64, TC8.52a x64
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Чт янв 19, 2012 12:45
Из-под ТСx32 на Winx32 она [s]не может верно работат[/s]ь, т.к. PROCESSOR_ARCHITECTURE покажет x86, а не AMD64.
А, хотя нет. Вижу в коде, что при невыполнении условий остаётся первое значение. Возьмём на заметику (даже не столько саму реализацию, сколько метод предусловности).
gora
Сообщения: 442 Зарегистрирован: Чт дек 30, 2004 13:09
Откуда: Иваново
Сообщение
gora » Чт янв 19, 2012 13:01
Del
Последний раз редактировалось
gora Чт янв 19, 2012 13:39, всего редактировалось 1 раз.
Win7 SP1 Ultimate x64, TC8.52a x64
Flasher
Сообщения: 14229 Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва
Сообщение
Flasher » Чт янв 19, 2012 13:31
gora
С опозданицем. См. выше.
А что должно происходить после выяснения битности ТС?
gora
Сообщения: 442 Зарегистрирован: Чт дек 30, 2004 13:09
Откуда: Иваново
Сообщение
gora » Чт янв 19, 2012 13:37
Flasher писал(а): А что должно происходить после выяснения битности ТС?
Установка
"Кнопки..." нужной разрядности.
Win7 SP1 Ultimate x64, TC8.52a x64