Войти

Показать полную графическую версию : [решено] Как в батнике определить, ноутбук это или ПК?


iamforest
22-12-2010, 14:40
Как в батнике определить, ноутбук это или ПК?

Vadikan
22-12-2010, 14:44
How Can I Determine if a Computer is a Laptop or a Desktop Machine? - Hey, Scripting Guy! Blog (http://blogs.technet.com/b/heyscriptingguy/archive/2004/09/21/how-can-i-determine-if-a-computer-is-a-laptop-or-a-desktop-machine.aspx) - скрипт 2.

iamforest
22-12-2010, 14:52
а как то по проще есть решение? типа if exist..

Iska
22-12-2010, 21:59
iamforest, это и есть проще. В пакетных файлах для работы с Wbem может использоваться, с известными ограничениями, «wmic.exe». По вышеприведённой ссылке и Вашей задаче это будет наподобие:
@echo off

for /f "tokens=2 delims==" %%i in ('wmic.exe path Win32_SystemEnclosure get ChassisTypes /value') do set aChassisTypes=%%i
if defined aChassisTypes call :SplitChassisTypes %aChassisTypes:~1,-2%
exit /b 0

:SplitChassisTypes
setlocal
set sChassisType=%~1

if defined sChassisType (
for /f "tokens=%sChassisType% delims=;" %%i in ("Other;Unknown;Desktop;Low Profile Desktop;Pizza Box;Mini Tower;Tower;Portable;Laptop;Notebook;Hand Held;Docking Station;All in One;Sub Notebook;Space-Saving;Lunch Box;Main System Chassis;Expansion Chassis;SubChassis;Bus Expansion Chassis;Peripheral Chassis;Storage Chassis;Rack Mount Chassis;Sealed-Case PC") do echo %%i
shift
goto :SplitChassisTypes
)

endlocal
exit /b 0




© OSzone.net 2001-2012