Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Как проверить разрядность операционной системы?

Ответить
Настройки темы
CMD/BAT - [решено] Как проверить разрядность операционной системы?

Пользователь


Сообщения: 99
Благодарности: 4

Профиль | Отправить PM | Цитировать


Как проверить разрядность операционной системы?

У виндоуз 7 есть 2 версии: 64-х разрядная и 32-х разрядная.

Для 64-х разрядной нужно, чтобы выполнялись дополнительные программы. Как это сделать в коммандом файле?

Отправлено: 22:50, 08-04-2010

 

Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Цитата 7ka:
SystemInfo | find "x64-based PC" »
Этот прием не годится.
1 SystemInfo отрабатывает достаточно долго, что вызовет общую задержку в работе скрипта.
2 Посмотрите внимательно вывод SystemInfo, Вы обнаружите в нем несколько строк, которые задаются пользователем, например:
Код: Выделить весь код
Имя узла:                         GORA-ПК
Зарегистрированный владелец:      gora
Зарегистрированная организация:
Ни кто не помешает пользователю задать вместо gora, например, My dream is x64-based PC на х86 ОС. Тогда Ваш парсинг выдаст, что у этого пользователя x64 уже установлена! "Мечты сбываются"?
Это сообщение посчитали полезным следующие участники:

Отправлено: 15:35, 26-02-2013 | #41



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

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.

7ka 7ka вне форума

Аватара для 7ka

Старожил


Сообщения: 320
Благодарности: 32

Профиль | Отправить PM | Цитировать


gora, ну так-то оно так вот только сам пользователь знал бы еще об этом...
хорошо, не спорю, ваша взяла))) тогда вопрос: определить архитектуру пк и запустить соответствующие приложения, можно как-то уместить в одну строку?
..буду признателен!

Отправлено: 15:56, 26-02-2013 | #42


Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
Set xOS=x64& (If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set xOS=x86)& Call start "" /wait msiexec /i"%~dp0setup-%%xOS%%.msi" /quiet /norestart
Это сообщение посчитали полезным следующие участники:

Отправлено: 17:24, 26-02-2013 | #43

7ka 7ka вне форума

Аватара для 7ka

Старожил


Сообщения: 320
Благодарности: 32

Профиль | Отправить PM | Цитировать


gora, отлично, спасибо!
небольшая поправка:
Код: Выделить весь код
Set xOS=x64& (If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set xOS=x86)& Call start "" /wait msiexec /i"%~dp0\setup-%%xOS%%.msi" /quiet /norestart
а ведь придется имена файлов привязывать к команде в скрипте? например если в команде указан файл "setup-%%xOS%%.msi", файл должен быть с именем "setup-x86.msi" или "setup-x64.msi" т.е. что я хочу этим сказать - сама команда не может подстраиваться под имена файлов и искать в их заголовке только указанные значения/символы, типа (х86 или х64)?!

Отправлено: 17:59, 26-02-2013 | #44


Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Цитата 7ka:
небольшая поправка: »
Слеш в этом месте я умышленно выбросил из Вашей строки, ибо %~dp0 уже содержит завершающий слеш.
Цитата 7ka:
а ведь придется имена файлов привязывать к команде в скрипте? »
Совершенно необязательно, вот пример:
для х86 файл - 32-bit\install.msi
для x64 файл - AMD64\setup.msi
Код: Выделить весь код
Set xOS=AMD64\setup.msi& (If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set xOS=32-bit\install.msi)& Call start "" /wait msiexec /i"%~dp0%%xOS%%" /quiet /norestart
Это сообщение посчитали полезным следующие участники:

Отправлено: 18:15, 26-02-2013 | #45

7ka 7ka вне форума

Аватара для 7ka

Старожил


Сообщения: 320
Благодарности: 32

Профиль | Отправить PM | Цитировать


Цитата gora:
Слеш в этом месте я умышленно выбросил из Вашей строки, ибо %~dp0 уже содержит завершающий слеш. »
прошу прощения, не подумал...
Цитата gora:
Совершенно необязательно, вот пример:
для х86 файл - 32-bit\install.msi
для x64 файл - AMD64\setup.msi »
т.е. я правильно понимаю, если исполняемый, командный файл, в моем случаи "RunScript.cmd" с телом
Код: Выделить весь код
Set xOS=AMD64\setup.msi& (If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set xOS=32-bit\install.msi)& Call start "" /wait msiexec /i"%~dp0%%xOS%%" /quiet /norestart
который находиться в одной директории с пакетными файлами, к примеру:
- cdbxp_setup_x86_4.5.0.3717.msi
- cdbxp_setup_x64_4.5.0.3717.msi
при запуске из другого интерпретатора определит битность ОС и выполнит соответствующие приложение, определив в имени файла переменную "x64 или x86"?

Отправлено: 19:04, 26-02-2013 | #46


Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Цитата 7ka:
который находиться в одной директории с пакетными файлами, к примеру:
- cdbxp_setup_x86_4.5.0.3717.msi
- cdbxp_setup_x64_4.5.0.3717.msi »
Пакетными файлами принято называть .bat или .cmd файлы, а Вы это о чем? о .msi файлах?
Цитата 7ka:
моем случаи "RunScript.cmd" с телом
Код:
Set xOS=AMD64\setup.msi& (If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set xOS=32-bit\install.msi)& Call start "" /wait msiexec /i"%~dp0%%xOS%%" /quiet /norestart »
Судя по именам инсталяторов, Вам лучше использовать строку из поста 43, а не из 45. Хотя я так и не понял необходимости в батнике все запихивать в одну строку, это ж не командная строка...
Цитата 7ka:
при запуске из другого интерпретатора »
Что значит "другой интерпретатор"? О чем речь?

Отправлено: 19:28, 26-02-2013 | #47

7ka 7ka вне форума

Аватара для 7ka

Старожил


Сообщения: 320
Благодарности: 32

Профиль | Отправить PM | Цитировать


gora, дабы не офтопить ответил в пм

Отправлено: 20:37, 26-02-2013 | #48

7ka 7ka вне форума

Аватара для 7ka

Старожил


Сообщения: 320
Благодарности: 32

Профиль | Отправить PM | Цитировать


gora, подскажите, возможно ли объединить в один пакетный файл определение сразу нескольких параметров и исходя из этого выполнять ту или иную задачу, а именно: определение версии/разрядности ОС'ь
интересует именно определение ОС: 7 или 8 и их разрядность

Отправлено: 22:32, 29-03-2013 | #49


Аватара для gora

Ушёл из жизни


Сообщения: 6021
Благодарности: 3491

Профиль | Отправить PM | Цитировать


Код: Выделить весь код
@Echo Off
Set Tip=UNKNOWN
Reg QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ProductName | Find "Windows 7" >nul
If "%ERRORLEVEL%"=="0" Set Tip=Win7
Reg QUERY "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v ProductName | Find "Windows 8" >nul
If "%ERRORLEVEL%"=="0" Set Tip=Win8

Set xOS=x64& If "%PROCESSOR_ARCHITECTURE%"=="x86" If Not Defined PROCESSOR_ARCHITEW6432 Set xOS=x86

Echo %%xOS%% -	%xOS%
Echo %%Tip%% -	%Tip%
Pause
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:51, 29-03-2013 | #50



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Как проверить разрядность операционной системы?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Разное - [решено] Как убрать меню выбора операционной системы? trimo Microsoft Windows 2000/XP 84 26-01-2010 21:57
Вопрос - Как можно проверить был взлом системы или просто зашли под другим пользователем? ИС_ Защита компьютерных систем 0 24-09-2009 16:52
как узнать разрядность системы DIMON171 Хочу все знать 20 28-06-2008 19:57
Как убрать меню выбора операционной системы Guest Microsoft Windows 95/98/Me (архив) 1 10-09-2004 14:11
Разрядность операционной системы ankerok Хочу все знать 7 09-01-2003 16:45




 
Переход