Войти

Показать полную графическую версию : Удаленное определение винды


Titan-nic
15-02-2013, 08:29
Доброе время суток Гуру не матерных слов состоящих из 3-х букв :)

Помогите пожалуйста с батником.
Много тем нашел с определением винды. но не нашел с определением удаленно.
К примеру:
я разливаю на несколько пк файлы из листа
chcp 1251 1>nul
FOR /f %%i in (list.txt) do (
echo ----------------------------- %%i ----------------------------
xcopy /E /c /z BackUP_1C \\%%i\C$\BackUP_1C\ /Y
xcopy /C /Z pg_hba.conf "\\%%i\C$\Program Files (x86)\PostgreSQL\8.3.8-1.1C\data\" /Y
shutdown -r -t 0 -m \\%%i
echo ----------------------------------------------------------------------
echo.
) 1>>report.txt 2>&1
копируется папка с файлами и заменяется файл конфигурации.

Возник вопрос.
А можно определить сперва какая Винда стоит, удаленно? Известно только одно что Win7 и то что она либа х32, либо х64
Если х64, то заливать другую папку и заменять другой файл
chcp 1251 1>nul
FOR /f %%i in (list.txt) do (
echo ----------------------------- %%i ----------------------------
xcopy /E /c /z BackUP_1Cx64 \\%%i\C$\BackUP_1C\ /Y
xcopy /C /Z pg_hbax64.conf "\\%%i\C$\Program Files (x86)\PostgreSQL\8.3.8-1.1C\data\" /Y
shutdown -r -t 0 -m \\%%i
echo ----------------------------------------------------------------------
echo.
) 1>>report.txt 2>&1
если х32, то
chcp 1251 1>nul
FOR /f %%i in (list.txt) do (
echo ----------------------------- %%i ----------------------------
xcopy /E /c /z BackUP_1Cx32 \\%%i\C$\BackUP_1C\ /Y
xcopy /C /Z pg_hbax32.conf "\\%%i\C$\Program Files\PostgreSQL\8.3.8-1.1C\data\" /Y
shutdown -r -t 0 -m \\%%i
echo ----------------------------------------------------------------------
echo.
) 1>>report.txt 2>&1
то есть, сперва определить версию Win7, потом запустить/залить нужные данные

возможно вообще такое?

Gen_prot
15-02-2013, 23:35
вот пример
@Echo Off
title WinRAR
echo Install WinRAR
if not defined ProgramW6432 (
start /wait wrar420ru.exe /S
) else (
start /wait winrar-x64-420ru.exe /S
)

http://dixtrib.ru/publ/6-1-0-11

Titan-nic
18-02-2013, 08:12
Это если на локальной машине. А УДАЛЕННО? через (к примеру) \\PC\C$
Уточню
То есть. Сперва определить на удаленной машине какая win7 стоит (32 или 64) и потом залисть соответствующую папку.

DmitriiV
20-02-2013, 11:42
Titan-nic, изучайте WMI-класс Win32_OperatingSystem и утилиту WMIC.EXE.




© OSzone.net 2001-2012