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 

Определение битности системы
Goto page Previous  1, 2, 3, 4, 5  Next
 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Flasher



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

Post (Separately) Posted: Sun Jan 16, 2011 08:34    Post subject: Reply with quote

Вахмурка
А что покажет, если выполнить с кнопки на тулбаре?:
Code:
With CreateObject("WScript.Shell")
MsgBox .ExpandEnvironmentStrings("%PROCESSOR_ARCHITECTURE%")
End With
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2586
Location: Большая деревня Москва

Post (Separately) Posted: Sun Jan 16, 2011 20:24    Post subject: Reply with quote

2Flasher
Пока на заведомо 32-битных осях. В понедельник вечером скажу.
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Sun Jan 16, 2011 20:34    Post subject: Reply with quote

Вахмурка
Сегодня домой не пустят? Very Happy
Обращусь тогда пока ко остальным, если ответ не последует, пиши завтра.

В общем, кто-нибудь, у кого Windows x64, вызовите vbs из ТС и доложите о результате здесь, пож-та.
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2586
Location: Большая деревня Москва

Post (Separately) Posted: Mon Jan 17, 2011 14:45    Post subject: Reply with quote

Докладываю: х86
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon Jan 17, 2011 20:22    Post subject: Reply with quote

Спасибо. Я начинаю думать, что PROCESSOR_ARCHITEW6432 работает только на x64 системах. Можешь в скрипте заменить на эту переменную и проверить?
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2586
Location: Большая деревня Москва

Post (Separately) Posted: Mon Jan 17, 2011 21:08    Post subject: Reply with quote

AMD64
_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon Jan 17, 2011 21:50    Post subject: Reply with quote

Вахмурка
Как подставлял? ("%PROCESSOR_ARCHITEW6432%") ?
Back to top
View user's profile Send private message
Вахмурка



Joined: 27 Dec 2004
Posts: 2586
Location: Большая деревня Москва

Post (Separately) Posted: Mon Jan 17, 2011 22:03    Post subject: Reply with quote

Code:
With CreateObject("WScript.Shell")
MsgBox .ExpandEnvironmentStrings("%PROCESSOR_ARCHITEW6432%")
End With

_________________
Сайт PowerPro+Total Commander
Скрипты PowerPro для Total Commander
* * *
«Не усматривайте злого умысла в том, что вполне объяснимо глупостью» (Р. Хэнлон)
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Mon Jan 17, 2011 22:10    Post subject: Reply with quote

i1
Code:
' Запуск проги из папки TC в зависимости от архитектуры Windows (32/64)
' Параметры: "\<относительный путь к x32-проге>" "\<отн. путь к x64-проге>"
' Пример: "\Utils\progaX32.exe" "\Utils\progaX64.exe"
'==================================================
With CreateObject("WScript.Shell")
If  Len(.ExpandEnvironmentStrings("%PROCESSOR_ARCHITEW6432%"))=24 Then
.Run """" & .ExpandEnvironmentStrings("%Commander_Path%") & WScript.Arguments(0) & """"
Else .Run """" & .ExpandEnvironmentStrings("%Commander_Path%") & WScript.Arguments(1) & """"
End If
End With


Last edited by Flasher on Tue Jan 18, 2011 09:15; edited 1 time in total
Back to top
View user's profile Send private message
LonerD



Joined: 04 Jan 2011
Posts: 1172
Location: Макеевка

Post (Separately) Posted: Tue Jan 18, 2011 02:37    Post subject: Reply with quote

Испробую описанные здесь методы, а вначале укажу свой метод, о котором указано в третьем сообщении.
Вызываю через hidcon следующий cmd-файл:
Code:
IF EXIST "%ProgramFiles(x86)%" (
  Start /Wait CCleaner64.exe
) Else (
  Start /Wait CCleaner.exe
)

Для примера вписано название программы.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Tue Jan 18, 2011 04:50    Post subject: Reply with quote

LonerD
Данный пример не удовлетворяет условию топикстартера. Необходимо это лишь для переносного ТС, открываемого на разных ОС. А на своей машине и так понятно, какая архитектура и какие программы следует запускать. И потом, в моём скрипте указаны параметры, соответственно кнопок/команд может быть много, а скрипт будет один. В батнике это тоже можно сделать.
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Tue Jan 18, 2011 13:23    Post subject: Reply with quote

В принципе, совсем несложно написать DLL в виде плагина для Autorun.wdx, которая будет проверять битность системы и устанавливать значение некоей переменной окружения - т.к. она будет загружаться в окружении TC, установленные в ней переменные будут видны в TC. Тогда имя и значение переменной можно выбрать любые.
_________________
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: Tue Jan 18, 2011 13:39    Post subject: Reply with quote

MVV
А что это изменит для данной ситуации? Только время зря потратишь..
Back to top
View user's profile Send private message
Volniy



Joined: 15 Dec 2004
Posts: 585
Location: Местный

Post (Separately) Posted: Tue Jan 18, 2011 13:57    Post subject: Reply with quote

А может быть тут такой батник сгодится?
Code:
Set RegQry=HKLM\Hardware\Description\System\CentralProcessor\0
REG.exe Query %RegQry%  | Find /i "x86"
If %ERRORLEVEL% == 0 (
    GOTO X86
) ELSE (
    GOTO X64
)


:X86
echo x86
pause

GOTO END
:X64

echo x64
pause

:End

Вместо эхов и пауз, ессно, ставим разный код для разных платформ.

PS Не мое, не проверял на x64.
PPS На WSH еще проще такое сделать будет.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Tue Jan 18, 2011 14:06    Post subject: Reply with quote

Volniy
Да мой скрипт нормально работает для исходной задачи. Зачем лишние телодвижения?
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  Next
Page 2 of 5

 
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