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

Название темы: Оперативная память
Показать сообщение отдельно

Ветеран


Contributor


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

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


Malukov.Dmitry, Iska, Подозреваю, wmic os get FreePhysicalMemory,TotalVisibleMemorySize выдаёт память в килобайтах. Тогда, если границы задавать в килобайтах, то:
Цитата Malukov.Dmitry:
в CMD возможно реализовать то же самое »
Код: Выделить весь код
@Echo Off
cls
	Set Program="C:\Windows\System32\notepad.exe"

	FOR /F "usebackq skip=1 tokens=1,2 delims= " %%i IN (`"wmic os get FreePhysicalMemory,TotalVisibleMemorySize"`) DO If Not "%%j"=="" Set /A Free=%%i

	If %Free% LSS 524288 Call :Lss512Mb %Free% &GoTo :Cont
	If %Free% LSS 1048576 Call :Lss1Gb %Free% &GoTo :Cont
	If %Free% LSS 2097152 Call :Lss2Gb %Free% &GoTo :Cont
	Start " " %Program% &GoTo :Eof 
:Cont

pause
GoTo :Eof

:Lss512Mb
	Echo 512Mb^<=%1Mb
GoTo :Eof

:Lss1Gb
	Echo 512Mb^<=%1Mb^<1Gb
GoTo :Eof

:Lss2Gb
	Echo 1Gb^<=%1Mb^<2Gb
GoTo :Eof
Если возможна память >=2000Gb, тоже можно выкрутиться, если wmic отработает, конечно.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.


Последний раз редактировалось megaloman, 08-12-2018 в 16:18.

Это сообщение посчитали полезным следующие участники:

Отправлено: 15:07, 08-12-2018 | #7

Название темы: Оперативная память