Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 06.02.2020
Сообщений: 6

Достигнут уровень рекурсии, максимально возможный для команды SETLOCAL

22.10.2021, 12:42. Показов 689. Ответов 6

Студворк — интернет-сервис помощи студентам
Простейшая задумка столкнулась с проблемой. Написал скрипт, при запуске которого переключается режим электропитания. Выглядит так:

Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Echo off
setlocal
SET HighPerf=GUID схемы питания: a30dcfc6-c514-4ea8-80d4-2fbd41cc3851  (Высокая производительность (своя))
Powercfg -getactivescheme > tmp.txt
SET /p active= < tmp.txt
IF "%active%" == "%HighPerf%" (
Powercfg -s 7eef4cc0-3d21-47d9-848b-782f7efdae2e
) ELSE (
Powercfg -s a30dcfc6-c514-4ea8-80d4-2fbd41cc3851
)
DEL tmp.txt
endlocal
@Echo on
Powercfg -getactivescheme
PAUSE
Если быть честным, то я его нашел на StackExchange и просто подменил GUID`ы режимов. Но при запуске батника открывается командная строка, бесконечно пишущая "Достигнут уровень рекурсии, максимально возможный для команды SETLOCAL".

Порыскал на форуме, нашел несколько топиков с таким же вопросом, но так и не понял в чем дело. Я вообще полный ноль в этом.

Кто может объяснить, в чем проблема и как ее решить?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
22.10.2021, 12:42
Ответы с готовыми решениями:

"Достигнут уровень рекурсии, максимально возможный для команды SETLOCAL"
Возникла проблема при обработке данных. из list.txt необходимо экспортировать диапазоны строк в множество файлов last.txt расположенных в...

Знак восклицания (!) в именах файлов внутри цикла при Setlocal EnableDelayedExpansion (достигнут максимально возможный уровень рекурсии)
Проблема в том когда я включаю setlocal то в именах файлах в которых присутствует ! знак просто проглатывается. Например 60_1234!.txt в...

Подобрать максимально возможный и максимально совместимый процессор
Имеется ноутбук (Futjitsu Siemens esprimo mobile v 5535) сокет mPGA 478MN. Помогите подобрать максимально возможный и максимально...

6
3449 / 1110 / 494
Регистрация: 29.05.2016
Сообщений: 4,566
22.10.2021, 13:13
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
@Echo off
SET "HighPerf=GUID схемы питания: a30dcfc6-c514-4ea8-80d4-2fbd41cc3851  (Высокая производительность (своя))"
Powercfg -getactivescheme > tmp.txt
SET /p active= < tmp.txt
IF "%active%" == "%HighPerf%" (
Powercfg -s 7eef4cc0-3d21-47d9-848b-782f7efdae2e
) ELSE (
Powercfg -s a30dcfc6-c514-4ea8-80d4-2fbd41cc3851
)
DEL tmp.txt
Powercfg -getactivescheme
PAUSE
0
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
22.10.2021, 14:58
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
@echo off
set "HighPerf=GUID схемы питания: a30dcfc6-c514-4ea8-80d4-2fbd41cc3851  (Высокая производительность (своя))"
 
for /f "delims=" %%a in ('Powercfg -getactivescheme') do (
  if "%%a"=="%HighPerf%" (
    Powercfg -s 7eef4cc0-3d21-47d9-848b-782f7efdae2e
  ) else (
    Powercfg -s a30dcfc6-c514-4ea8-80d4-2fbd41cc3851
  )
)
Powercfg -getactivescheme
pause& exit
0
0 / 0 / 0
Регистрация: 06.02.2020
Сообщений: 6
24.10.2021, 13:16  [ТС]
Цитата Сообщение от Karen87 Посмотреть сообщение
@Echo off
SET "HighPerf=GUID схемы питания: a30dcfc6-c514-4ea8-80d4-2fbd41cc3851  (Высокая производительность (своя))"
Powercfg -getactivescheme > tmp.txt
SET /p active= < tmp.txt
IF "%active%" == "%HighPerf%" (
Powercfg -s 7eef4cc0-3d21-47d9-848b-782f7efdae2e
) ELSE (
Powercfg -s a30dcfc6-c514-4ea8-80d4-2fbd41cc3851
)
DEL tmp.txt
Powercfg -getactivescheme
PAUSE
Цитата Сообщение от alpap Посмотреть сообщение
@echo off
set "HighPerf=GUID схемы питания: a30dcfc6-c514-4ea8-80d4-2fbd41cc3851  (Высокая производительность (своя))"
for /f "delims=" %%a in ('Powercfg -getactivescheme') do (
  if "%%a"=="%HighPerf%" (
    Powercfg -s 7eef4cc0-3d21-47d9-848b-782f7efdae2e
  ) else (
    Powercfg -s a30dcfc6-c514-4ea8-80d4-2fbd41cc3851
  )
)
Powercfg -getactivescheme
pause& exit
К сожалению, оба метода не работают. Открывается пустое окно командной строки и все, больше ничего не происходит. И схема не меняется.
0
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
25.10.2021, 05:32
Цитата Сообщение от jowilei Посмотреть сообщение
оба метода не работают
ничуть не сомневался
первое, вы выдрали откуда-то название схемы: "GUID схемы питания: a30dcfc6-c514-4ea8-80d4-2fbd41cc3851 (Высокая производительность (своя))", но у вас не такое
второе, присваиваете какой-то левый SCHEME_GUID
третье, код не в кодировке 866 не читает правильно кириллицу
относительно моего кода других вариантов нет.
0
0 / 0 / 0
Регистрация: 06.02.2020
Сообщений: 6
25.10.2021, 07:03  [ТС]
Цитата Сообщение от alpap Посмотреть сообщение
но у вас не такое
что значит "у вас не такое"? У меня своя схема электропитания, которая называется "Высокая производительность (своя)".

Цитата Сообщение от alpap Посмотреть сообщение
вы выдрали откуда-то название схемы
не "откуда-то", а из командной строки, где в ответ на "powercfg -list" белым по черному было написано это самое "выдранное".

Цитата Сообщение от alpap Посмотреть сообщение
левый SCHEME_GUID
что в нем "левого"?

Цитата Сообщение от alpap Посмотреть сообщение
код не в кодировке 866 не читает правильно кириллицу
я кодировал в OEM-866 в кириллицу через Notepad++
0
4340 / 2130 / 661
Регистрация: 26.04.2015
Сообщений: 6,823
25.10.2021, 12:19
хорошо, запустите этот код и будете видеть где проблема:
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@echo off
set "HighPerf=GUID схемы питания: a30dcfc6-c514-4ea8-80d4-2fbd41cc3851  (Высокая производительность (своя))"
 
for /f "delims=" %%a in ('Powercfg -getactivescheme') do (
  if "%%a"=="%HighPerf%" (
    echo Есть такая схема эл.питания: "%%a"
    echo Меняем SCHEME_GUID на: Powercfg -s 7eef4cc0-3d21-47d9-848b-782f7efdae2e
  ) else (
    echo Нет схемы эл.питания: "%HighPerf%"
    echo Меняем SCHEME_GUID на: Powercfg -s a30dcfc6-c514-4ea8-80d4-2fbd41cc3851
  )
)
echo ------
Powercfg -getactivescheme
pause& exit
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.10.2021, 12:19
Помогаю со студенческими работами здесь

Как определить максимально возможный размер оперативной памяти для своего компьютера?
Собственно имеется 1 гиг оперативки и тормозящая при этом с завидной регулярностью максимальная семёрка. Для оперативки имеется четыре...

Максимальный уровень вложенности функции достигнут
Здравствуйте, переписываю сайт с mysql на mysqli и в итоге уперся в фатальную ошибку \ Максимальный уровень вложенности функции...

Вывести на экран результат возведения в степень числа с помощью рекурсии, подсчитать уровень рекурсии.
Задание: Вывести на экран результат возведения в степень числа с помощью рекурсии, подсчитать уровень рекурсии. Я и так знаю что даже ход...

Максимально возможный массив
Всем привет, возник вопрос.может , кто знает,есть ли какой то предел создания массива в матлвбе?

Максимально возможный процессор на эту материнку
Добрый вечер, стоит материнка Asus P8H61-M LX , есть несколько вопросов, ответьте пожалуйста: 1. Максимально возможный проц на нее...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru