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: Tue Jan 18, 2011 22:24    Post subject: Reply with quote

Tol!k
Конечно, можно парсить по "86" и "64" одновременно. Но смысл? Вполне достаточно одного условия.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Wed Jan 19, 2011 09:48    Post subject: Reply with quote

Flasher wrote:
Что толку от этих нормальных имён для данной задачи, я пока не пойму?
В общем-то, я понял в чём преимущество - будет проще работать с параметрами комстроки, с ключами.
MVV, резон. Не то, чтобы это понадобилось мне, но всё-таки если будет возможность - сделай библиотечку.

Совсем забыл про OS_ARCHITECTURE спросить. На 64 из ТС что у кого показывает?

i1 wrote:
Решил так: создал две папки с именами %PROCESSOR_ARCHITEW6432% и AMD64. В первой лежат файлы x86, во второй — x64.
На x64 будет работать только с камнем AMD, поэтому пока мой вариант предпочтительней. Либо придётся создавать жёсткие ссылки (если флешка в NTFS) с путями ...\Intel64\... и ...\EM64T\...
Back to top
View user's profile Send private message
Loopback



Joined: 07 Sep 2009
Posts: 1527

Post (Separately) Posted: Wed Jan 19, 2011 12:17    Post subject: Reply with quote

Flasher wrote:
MVV, резон. Не то, чтобы это понадобилось мне, но всё-таки если будет возможность - сделай библиотечку.

Можно, конечно, и и дополнительным плагином, но мне кажется, лучше сделать более универсальный способ. Давно думал добавить в плагин возможность макросов (констант) - т.е. некоторых значений, вычисляемых на каждой системе. Тогда можно будет просто устанавливать переменную окружения встроенной функцией.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Wed Jan 19, 2011 12:22    Post subject: Reply with quote

Loopback
Ну, так это совсем другой разговор. Займись на досуге. Wink
Back to top
View user's profile Send private message
i1



Joined: 13 Jan 2011
Posts: 34

Post (Separately) Posted: Wed Jan 19, 2011 14:11    Post subject: Reply with quote

Flasher wrote:
На x64 будет работать только с камнем AMD, поэтому пока мой вариант предпочтительней. Либо придётся создавать жёсткие ссылки (если флешка в NTFS) с путями ...\Intel64\... и ...\EM64T\...

Нет, на всех x64 переменная будет равна AMD64, сам сейчас проверил.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Wed Jan 19, 2011 14:30    Post subject: Reply with quote

i1
Странная переменная, коли так. На Itanium должно быть IA64.
А то, что я просил выше, проверялось?


Last edited by Flasher on Wed Jan 19, 2011 14:34; edited 1 time in total
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Wed Jan 19, 2011 14:31    Post subject: Reply with quote

Flasher wrote:
На x64 будет работать только с камнем AMD, поэтому пока мой вариант предпочтительней.

i1 wrote:
Нет, на всех x64 переменная будет равна AMD64, сам сейчас проверил.

Не нужно путать тип процессора и архитектуру. Архитектура всех 64-битных систем называется AMD64, т.к. первой её запатентовала (или не помню, как это правильнее сказать) AMD.


Loopback wrote:
Можно, конечно, и и дополнительным плагином, но мне кажется, лучше сделать более универсальный способ. Давно думал добавить в плагин возможность макросов (констант) - т.е. некоторых значений, вычисляемых на каждой системе. Тогда можно будет просто устанавливать переменную окружения встроенной функцией.

Думаю, эту часть можно оформить в виде отдельного плагинаSmile тогда те, кто в ней не нуждается, не будут таскать ее с собой, а тем, кто будет использовать, разницы никакой. Да и обновлять маленькую библиотечку проще, чем большую.
_________________
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: Wed Jan 19, 2011 14:40    Post subject: Reply with quote

MVV wrote:
Не нужно путать тип процессора и архитектуру.
Я не путаю. Я вижу что показывает переменная, и архитектура моего процесcора не x86, а x86-64. Обрати внимание на значение у Вахмурки, которое соответствует архитектуре оси. И прочти что тут написал CaptainFlint. Как эмуляция может влиять на архитектуру процессора?
MVV wrote:
Архитектура всех 64-битных систем называется AMD64, т.к. первой её запатентовала (или не помню, как это правильнее сказать) AMD.
Здесь "т.к." совсем не кстати. По Itanium см. выше.
Back to top
View user's profile Send private message
i1



Joined: 13 Jan 2011
Posts: 34

Post (Separately) Posted: Wed Jan 19, 2011 17:04    Post subject: Reply with quote

Flasher wrote:
Совсем забыл про OS_ARCHITECTURE спросить. На 64 из ТС что у кого показывает?
Это же не стандартная переменная, а добавляется по скрипту Tol!k, как я понял.

Flasher wrote:
Странная переменная, коли так. На Itanium должно быть IA64.
Да, здесь и сказано, что будет IA64.
Back to top
View user's profile Send private message
Flasher



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

Post (Separately) Posted: Wed Jan 19, 2011 18:31    Post subject: Reply with quote

i1 wrote:
Это же не стандартная переменная, а добавляется по скрипту Tol!k, как я понял.
Я что-то не могу вспомнить - запускал я его или нет. Confused Вроде бы даже не копировал. Хотя..
i1 wrote:
Да, здесь и сказано, что будет IA64.
Ну, значит не на всех. Wink
Back to top
View user's profile Send private message
i1



Joined: 13 Jan 2011
Posts: 34

Post (Separately) Posted: Wed Jan 19, 2011 18:33    Post subject: Reply with quote

Flasher wrote:
Я что-то не могу вспомнить - запускал я его или нет. Confused Вроде бы даже не копировал. Хотя..
Сейчас попробовал в консоли — "переменная среды не определена". Скрипт не запускал.
Back to top
View user's profile Send private message
Tol!k



Joined: 01 Apr 2008
Posts: 1727
Location: Арзамас

Post (Separately) Posted: Wed Jan 19, 2011 18:52    Post subject: Reply with quote

i1, там какие-то заморочки с .сом-файлами
Попробуй так
Code:
@echo off
if defined OS_ARCHITECTURE (set OS_ARCHITECTURE &goto :end)
for /f "tokens=3 delims=:- " %%a in ('systeminfo ^|findstr /rc:"-based PC$"') do (
setx OS_ARCHITECTURE %%a
set OS_ARCHITECTURE=%%a
)
:end

а setx.exe положи рядом
Back to top
View user's profile Send private message
MVV



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

Post (Separately) Posted: Wed Jan 19, 2011 20:27    Post subject: Reply with quote

Tol!k wrote:
Попробуй так
Code:
@echo off
if defined OS_ARCHITECTURE (set OS_ARCHITECTURE &goto :end)
for /f "tokens=3 delims=:- " %%a in ('systeminfo ^|findstr /rc:"-based PC$"') do (
setx OS_ARCHITECTURE %%a
set OS_ARCHITECTURE=%%a
)
:end

а setx.exe положи рядом
А разве возможно передать локальную переменную окружения из окружения процесса в окружение процесса-родителя?

Flasher wrote:
MVV wrote:
Архитектура всех 64-битных систем называется AMD64, т.к. первой её запатентовала (или не помню, как это правильнее сказать) AMD.
Здесь "т.к." совсем не кстати. По Itanium см. выше.
Да, я имел в виду традиционную архитектуру, IA - это вообще другая песня.
_________________
TCFS2 + TCFS2Tools: Полноэкранный режим и многое другое (обсуждение)
WINCMD.RU: AskParam, CopyTree, NTLinks, Sudo, VirtualPanel…
Back to top
View user's profile Send private message
Tol!k



Joined: 01 Apr 2008
Posts: 1727
Location: Арзамас

Post (Separately) Posted: Wed Jan 19, 2011 21:23    Post subject: Reply with quote

MVV
setx.exe установит глобальную переменную.
А если что-то дописать после :end (напр. totalcmd.exe) то для него будет действовать локальная
Back to top
View user's profile Send private message
Factotum



Joined: 01 Apr 2007
Posts: 22

Post (Separately) Posted: Fri Jan 21, 2011 05:06    Post subject: Reply with quote

может я чего не понял, но работает це навернека
Code:
if exist "%ProgramFiles(x86)%" goto WIN64
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 4 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