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

Показать сообщение отдельно

Новый участник


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

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


Дабы не создавать новую, аналогичную тему этой и этой
Столкнулся с проблемой использования bcdedit в bat файле, а именно
Цитата:
"bcdedit" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

(errorlevel=9009)
Если запустить cmd через "Выполнить", то bcdedit отрабатывает нормально.
Но если в батнике, или запустив cmd где-то в другом месте - ругается.
(Использовал метод повышение прав до админских скриптом)

Код: Выделить весь код
@echo off
ver |>NUL find /v "5." && if "%~1"=="" (
  Echo CreateObject^("Shell.Application"^).ShellExecute WScript.Arguments^(0^),"1","","runas",1 >"%~dp0Elevating.vbs"
  cscript.exe //nologo "%~dp0Elevating.vbs" "%~f0"& goto :eof
)
:: Код...


Ещё смущает расположение (скрины по ссылкам)


Для своей задачи использовал костыль
такого вида

Код: Выделить весь код
::...
set bcdedit=bcdedit
::...
:install
::...
%bcdedit%
if %errorlevel% gtr 0 goto findbcdedit
::...
:findbcdedit
for /f "tokens=*" %%a in (
		'Dir /b/s/a-d %windir%\bcdedit.exe'
			) do Set bcdedit="%%a"
goto install
::...

Но хотелось бы понять где и что именно делаю не правильно указав в bat файле явную команду bcdedit.

Отправлено: 14:59, 09-04-2017 | #26