Страница 3 из 9
Добавлено: Чт янв 19, 2012 21:14
gora
Flasher писал(а):для какого ТС устанавливать кнопку в общую папку?
Для того ТС, который запущен. Запустит х86 ТС - получит установку х86 кнопки, запустит х64 ТС - получит х64 кнопку. Это выбор пользователя.
Flasher писал(а):Ведь wincmd.ini общий
Кнопка не использует его и не прописывается в нем.
Flasher писал(а):а 32-разрядная кнопка на TCx64 не работает?
Работает.
Добавлено: Чт янв 19, 2012 21:18
Flasher
gora писал(а):Работает.
Хм. Коли так, тогда не проще проверять по архитектуре ОС? Ведь TCx64 на 32-битной ОС использовать нет смысла.

Добавлено: Чт янв 19, 2012 21:28
gora
Flasher писал(а):тогда не проще проверять по архитектуре ОС?
У меня стоят ТС обеих разрядностей и в каждом стоит кнопка соответствующей разрядности. Думаю, что такое может быть и у других пользователей.
Также пользователь х64 ОС может не желать использовать беты ТС и будет продолжать пользоваться ТС 7, т.е. х86. Значит ему и кнопка х64 может не пригодится.
В любом случае кнопка и ТС одной разрядности - лучший вариант.
Добавлено: Чт янв 19, 2012 21:38
Flasher
gora
А Кнопкаx64 из TCx32 на Winx64 разве не работает?
Добавлено: Чт янв 19, 2012 21:46
gora
Flasher
Работает, но я не думаю, что это правильно.
Мы уже отклонились от темы ветки.
Добавлено: Пт янв 20, 2012 00:31
Flasher
gora писал(а):но я не думаю, что это правильно.
А по-моему, как раз правильно. Именно так и надо ставить, ИМХО.
Вроде уже знаю, что делать. Для начала из TCx
64pb
10+ надо вызвать vbs:
Код: Выделить всё
For Each p in GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2").ExecQuery("SELECT CreationClassName, CSCreationClassName, OSCreationClassName FROM Win32_Process WHERE ExecutablePath Like '" & Replace(CreateObject("WScript.Shell").Environment("Process")("COMMANDER_EXE"),"","\")& "'")
MsgBox p.CreationClassName & vbNewline & p.CSCreationClassName & vbNewline & p.OSCreationClassName
Next
Что покажет - скинуть сюда.
2
All: Кто-нибудь, у кого 64-система, подключитесь, это полминуты проверить.
Добавлено: Пт янв 20, 2012 13:08
CaptainFlint
Win7 x64 SP1, TC 8.0β16 x64:
---------------------------
---------------------------
Win32_Process
Win32_ComputerSystem
Win32_OperatingSystem
---------------------------
ОК
---------------------------
Добавлено: Пт янв 20, 2012 13:11
Flasher
CaptainFlint
Спасибо за отзыв.
Хм. Тогда по другому сделаю.
Добавлено: Пт янв 20, 2012 17:31
Lev
Одним из способов получения местоположения ini файлов в старых версиях ТС, до введения соответствующей переменной был программный запуск About и чтение адресов из него. Думаю возможно воспользоваться тем же методом и для получения информации о разрядности ТС.
Например в моём About'е написано:
Total Commander Version 7.55a 32 bit (7.7.2010)
Добавлено: Пт янв 20, 2012 17:46
Flasher
Так там надо строки расшифровывать в ini, Не, не пойдёт.
gora
Я могу всё сделать, только мне нужна цепочка программ. Точнее их число.
Т.е. TC > установщик > батник > скрипт. Или как-то ещё.
Добавлено: Пт янв 20, 2012 20:19
gora
Flasher писал(а):нужна цепочка программ.
OS -> TC -> SFX -> CMD (батник)
1 OS - х64 или x86
2 TC - х64 или x86
3 SFX - всегда x86
4 CMD сейчас x86, но может запускаться в среде с разрядность OS (если это нужно разработчику)
Добавлено: Пт янв 20, 2012 20:33
Flasher
gora
Мне главное цепочка, битности не нужны. Скрипт что должен запускать? Установщик, батник или что?
Или он должен просто какое-то значение возвращать?
Добавлено: Пт янв 20, 2012 20:39
gora
Flasher
Какой скрипт? Мне нужно определить разрядность запущенного ТС. Я это делаю из батника и там же принимается решение о дальнейших действиях. Вот собственно и вся задача.
Добавлено: Пт янв 20, 2012 20:40
Flasher
gora
А как же?:
gora писал(а):Flasher писал(а):На vbs можно ещё одним способом
Можно увидеть реализацию?
....
Скрипт нужен для инсталлятора. Он должен определить разрядность запущенного ТС (из которого запущен сам инсталлятор/скрипт) автоматически, без вмешательства пользователя.
PS.
Скрипт при этом будет располагаться во временной папке.
Добавлено: Пт янв 20, 2012 20:51
gora
Flasher
Хотел увидеть как можно получить разрядность запущенного ТС с помощью vbs. Использовать совместно батник и vbs для меня не зазорно. У меня и сейчас два vbs скрипта запускаются из этого батника, ну будет три...
