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 

%PROCESSOR_ARCHITECTURE% в wincmd.ini и совместимость Win9X
Goto page 1, 2, 3, 4  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы printer-friendly view
View previous topic :: View next topic  
Author Message
Mellomann



Joined: 07 Sep 2009
Posts: 709

Post (Separately) Posted: Thu Sep 17, 2015 23:46    Post subject: %PROCESSOR_ARCHITECTURE% в wincmd.ini и совместимость Win9X Reply with quote

Есть загвоздка с компоновкой 32 и 64 битных версий тотала (на флешку) софтом соответствующей разрядности. Например, тот же Akelpad и RAR - вполне себе есть под обе версии.
Пока обхожусь двумя wincmd.ini для использования х64 софта на ТС64, но это немного геморно, т.к. это требует ключа /i, что не всегда приемлемо.
Но посетила меня мысль - обозвать, например, путь к Akelpad через переменную "%PROCESSOR_ARCHITECTURE%".

Т.е., вместо привычного
Editor=%COMMANDER_PATH%\Plugins\exe\AkelPad\AkelPad.exe
будет
Editor=%COMMANDER_PATH%\Plugins\exe\AkelPad_%PROCESSOR_ARCHITECTURE%\AkelPad.exe

Только один нюанс вылазит - на Win9X подобный трюк не прокатит (там просто нет такой переменки).

Собственно, вопросы:
1. Кто как решал задачу совместной работы двух разрядностей тоталовского редактора для F4 и архиватора RAR?
2. Есть ли смысл воротить огород с именно этой переменной, или есть варианты получше? (но чтоб обойтись одной универсальной строкой на оба варианта!)
3. Наслышан, что %PROCESSOR_ARCHITECTURE% имеет больше двух значений (внезапно!). Как обойти?

П.С.
Вариант с созданием временных переменных и прочей требухи не проходит, т.к. это надо на флешку, на разные системы, где в большинстве случаев нет ни админских прав, ни прочих радостей автоматизации.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Thu Sep 17, 2015 23:55    Post subject: Reply with quote

Mellomann
Переливаем из пустого в порожнее?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Mellomann



Joined: 07 Sep 2009
Posts: 709

Post (Separately) Posted: Fri Sep 18, 2015 00:05    Post subject: Reply with quote

Так-то мысль уже давно не свежая, но на практике вылазит несостоятельность пройденных "решений" из тех тем...

Итак, дабы три раза не вставать:
1. Установка ещё одной переменной - не подходит.
2. Вариант консольного монстра if exist.... else.... - не подходит.
3. Привязка к внешней запускалке - не подходит.

Да и основной вопрос - работа на Win9X (о да, я к некрофилам тоже хожу) - не раскрыт.

Несмотря на особенности именно этой переменной - чую, что это самое надёжное решение, но хотелось бы знать наверняка, вдруг что получше есть...
Есть другие идеи?
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Fri Sep 18, 2015 00:34    Post subject: Reply with quote

1, 3 - на Win9x не пробовал, на остальных проблем не встречал.
Т.е. будет работать и такая канитель
Code:
Editor=%COMMANDER_PATH%\Utils\AkelPad\AkelPad_%OSARCH%.exe
и в F4Menu и где бы то ещё ни было. Но я лично предпочёл 32 нигде не писать.
А упомянутый в стартовом посте подход с разбивкой вариантов программы на папки давно утерял актуальность.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1244

Post (Separately) Posted: Fri Sep 18, 2015 12:54    Post subject: Reply with quote

Flasher
AutoRun работает только на WinNT - Win2000 и выше - если верить документации.
Flasher wrote:
А упомянутый в стартовом посте подход с разбивкой вариантов программы на папки давно утерял актуальность.

С чего вдруг? Далеко не для всех программ возможно объединить обе разрядности в одной папке.

Mellomann
Не уверен, что можно подружить х86+х64 и Win9x. Как мне кажется, имеет смысл подружить х86 и х64 с помощью внутренней переменной и добавить батник, определяющий, что ОС Win9x, и запускающий ТСх86 с ключом /i и wincmd9x.ini.
Вместо батника, наверное, можно использовать AutoIt 3.2.12.1, VBScript не прокатит, предполагаю, - для определения ОС обычно используется WMI.
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Fri Sep 18, 2015 14:04    Post subject: Reply with quote

Если принять во внимание юникодность Autorun, то да, только в Windows NT...

Предлагаю для некро-систем бросить в папку тотала батник, который будет ставить переменные, которые должны быть установлены Autorun-ом, и потом запускать тотал - будет совместимость с Windows 9x.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Fri Sep 18, 2015 19:51    Post subject: Reply with quote

Skif_off wrote:
AutoRun работает только на WinNT - Win2000 и выше - если верить документации.
Даже если так, утверждения по списку шли до "Да и основной вопрос ...".
Skif_off wrote:
Далеко не для всех программ возможно объединить обе разрядности в одной папке.
Согласен. Хотя сути решения это не меняет.
Skif_off wrote:
VBScript не прокатит, предполагаю, - для определения ОС обычно используется WMI.
Насчёт прокатит или нет на Win9x ответить не возьмусь, а вот про "обычно" - неправда.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1244

Post (Separately) Posted: Fri Sep 18, 2015 23:05    Post subject: Reply with quote

Flasher wrote:
а вот про "обычно" - неправда.

От столь искушённого в VBScript можно было бы и поподробнее Smile Сколько видел примеров - все с использованием WMI, если память не подводит, но особо не интересовался, т.к. меня не устраивают решения, не работающие в WinPE.
По идее можно читать в реестре, правда, навскидку не вспомню, где.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sat Sep 19, 2015 00:17    Post subject: Reply with quote

Skif_off
Меня тоже память не особо подводит. Если это и имеет смысл обсудить, то не думаю, что здесь.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Mellomann



Joined: 07 Sep 2009
Posts: 709

Post (Separately) Posted: Sun Sep 20, 2015 00:52    Post subject: Reply with quote

Quote:
подход с разбивкой вариантов программы на папки давно утерял актуальность
Бред.
Quote:
добавить батник, определяющий, что ОС Win9x, и запускающий ТСх86 с ключом /i и wincmd9x.ini
/i требует полного абсолютного пути к ini файлу, иначе не подхватывается. Если б не эта проблема - проблемы бы не было.
Quote:
батник, который будет ставить переменные
Опять 25...
Quote:
VBScript
Не вариант, заблокировано групповыми политиками.

Эх.... Всё - тлен.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sun Sep 20, 2015 01:23    Post subject: Reply with quote

Mellomann wrote:
Бред.
Не бред, если понимаешь о чём речь и с чьей стороны разбивка. Читаем внимательно приведённые топики.
Mellomann wrote:
Если б не эта проблема
%CD% в 9x нет разве?
Mellomann wrote:
Не вариант, заблокировано групповыми политиками.
Разблокируй. Там можно что угодно заблокировать, в т.ч. запуск Тотала.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1244

Post (Separately) Posted: Sun Sep 20, 2015 02:21    Post subject: Reply with quote

Mellomann wrote:
/i требует полного абсолютного пути к ini файлу, иначе не подхватывается. Если б не эта проблема - проблемы бы не было.

???
Раз требует - передайте Smile
cmd:
Code:
start %~dp0\TOTALCMD.EXE /i=%~dp0\wincmd9x.ini

VBS:
Code:
Set WshShell = CreateObject("WScript.Shell")
WshShell.Run(WshShell.CurrentDirectory & "\TOTALCMD.EXE /i=" & WshShell.CurrentDirectory & "\wincmd9x.ini")
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sun Sep 20, 2015 02:36    Post subject: Reply with quote

Skif_off, в путях кавычек не хватает.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Skif_off



Joined: 28 Nov 2012
Posts: 1244

Post (Separately) Posted: Sun Sep 20, 2015 03:11    Post subject: Reply with quote

Flasher
Пример же, а не готовое решение Smile

 Hidden text


Last edited by Skif_off on Sun Sep 20, 2015 11:27; 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: Sun Sep 20, 2015 03:32    Post subject: Reply with quote

Skif_off
Я имел в виду не только vbs, но и батник, в котором, кстати, start не нужен.
Во всех случаях нужен как минимум ключ /N. На vbs скобки в Run нужны только для кода выхода.
 Hidden text

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Общие вопросы All times are GMT + 4 Hours
Goto page 1, 2, 3, 4  Next
Page 1 of 4

 
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