Запуск программы с правами администратора через bat

Команда RUNAS – запуск приложения от имени другого пользователя Windows.

RunASЗапуск из командного файла приложений от имени Администратора без запроса UAC.

Формат командной строки RUNAS:

RUNAS /trustlevel:уровень доверия программа

Параметры командной строки:

/noprofile – Не загружать профиль пользователя. Это приводит к более быстрой загрузке приложения, но может стать причиной неправильной работы некоторых приложений.

/profile – Загружать профиль пользователя. Этот параметр установлен по умолчанию.

/env – Использовать текущие параметры среды.

/netonly – Учетные данные предназначены только для удаленного доступа.

/savecred – Использовать учетные данные, сохраненные пользователем. Этот вариант не доступен в выпусках Windows 7 Домашняя или Windows 7 Начальная и будет проигнорирован.

/smartcard – Для указания учетных данных используется смарт-карта.

/showtrustlevels – Отобразить список уровней доверия, которые можно использовать в качестве аргументов параметра /trustlevel.

/trustlevel – Значение “уровень доверия” должно быть перечислено в списке уровней доверия.

программа – Командная строка для EXE. См. примеры ниже.

runas /showtrustlevel – отобразить уровни доверия, существующие в системе. В ответ будет отображаться перечень в виде:

В системе доступны следующие уровни доверия:
0x20000 (Обычный пользователь)

Кроме значения trustlevel равного 0x20000 можно пользоваться значениями 0x10000, соответствующему минимальному набору привилегий и 0x40000, стандартному для данного пользователя набору.
Для просмотра отличий разных уровней доверия можно воспользоваться командой Whoami, выполняя ее в сеансе командного процессора, запускаемого с каждым из уровней trustlevel

runas /trustlevel:0x20000 cmd.exe – запустить командный процессор cmd.exe с использованием уровня доверия, полученного в предыдущем примере.

runas /trustlevel:0x40000 cmd.exe – запустить командный процессор cmd.exe с использованием стандартного уровня доверия.

Примечание: в сеансе командной строки, запущенной с использованием параметра /trustlevel, список привилегий соответствующий каждому уровню доверия можно получить с использованием команды whoami /priv,
а полные сведения об учетной записи – whoami /ALL

Примечание: параметр /profile несовместим с параметром /netonly.

Примечание: параметр /savecred несовместим с параметром /smartcard .

Для запуска приложений от имени администратора с использованием runas.exe необходимо изменить стандартные настройки безопасности системы:

– включить учетную запись Администратора ( по умолчанию, она отключена);

– задать пароль для пользователя Администратор;

Пароли, запоминаемые при использовании утилиты RUNAS. EXE с параметром /savecred можно
изменить или удалить с помощью оснастки управления сохраненными паролями:

При наборе ключевых значений нужно соблюдать регистр символов.

Для управления сохраненными учетными записями в командной строке Windows используется утилита
CMDKEY. EXE

Распространённый совет по решению проблем с запуском или работой какой-либо программы или игры — попробовать запустить её от имени Администратора, часто предполагается, что пользователь уже знает, как это сделать, но это не всегда верно для начинающих.

В этой инструкции подробно о том, как запустить любую игру или программу как Администратор в Windows 10 различными способами.

Способы запуска программы как Администратор

Учитывайте, что для возможности выполнения описанных далее шагов, ваша учётная запись должна иметь соответствующие права администратора в системе или, при их отсутствии, вам потребуется ввести пароль такой учётной записи. Также будьте осторожнее с запуском малоизвестных вам программ от администратора (так как тем самым вы им даёте права на почти любые изменения в системе), предварительно проверьте такую программу на вирусы онлайн.

В Windows 10 возможны разные методы запуска программ и игр от имени Администратора, по порядку рассмотрим их все.

Как сделать, чтобы программа или игра всегда запускалась с повышенными правами

Если вы не хотите каждый раз проделывать описываемые действия и требуется, чтобы выбранная программа или игра всегда запускалась от имени администратора, вы можете сделать следующее:

:/>  Виндовс 7 работает некорректно что делать

И ещё один момент: значки некоторых программ имеют изображение щита в правом нижнем углу — такие программы всегда запускаются с правами администратора: это необходимое условие для их работы, заданное разработчиками.

Видео инструкция

Для опытных пользователей (а скорее даже не для них, а для администраторов), понимающих стоящие перед ними задачи и готовых разобраться, может оказаться полезной утилита PsExec, доступная в составе PsTools на Microsoft Sysinternals — https://docs.microsoft.com/en-us/sysinternals/downloads/psexec. Обычно её используют для запуска инструментов на удаленной машине, но можно применить и на локальном компьютере.

Например, с помощью psexec, мы можем запустить программу от имени администратора (в том числе из bat-файла) без запроса контролей учётных записей следующим образом (первый вариант для запуска от имени Администратора программы, не требующей повышения прав по умолчанию, второй — для программ, которым это требуется, например, regedit­):

psexec -u Администратор -p password путь_к_program.exe
psexec -u Администратор -p password “cmd.exe” /c start путь_к_программе_с_запросом_uac


Запуск программы с правами администратора через bat

Это лишь примеры, не рекомендую такое применение. Для работы приведённой команды встроенная учётная запись администратора локального компьютера должна быть активна и иметь пароль (в команде — password), иначе потребуются дополнительные настройки локальной политики безопасности. Существуют и иные варианты реализации необходимых действий в psexec, включая запуск программ от имени системного аккаунта и не только. Ещё одна утилита командной строки с иными возможностями, но также позволяющая выполнить запуск приложения с повышенными правами ­— NirSoft NirCmd.

Нередко советы по тем или иным действиям и исправлениям в Windows 10, 8 и Windows 7 включают в себя шаги наподобие: «создайте файл .bat со следующим содержимым и запустите его». Однако, начинающий пользователь не всегда знает, как это сделать и что собой представляет такой файл.

В этой инструкции подробно о том, как создать командный файл bat, запустить его и некоторая дополнительная информация, которая, возможно, окажется полезной в контексте рассматриваемой темы.

Создание. bat файла с помощью блокнота

Первый и самый простой способ создать bat файл — использовать стандартную программу «Блокнот», присутствующую во всех актуальных версиях Windows.

Шаги по созданию будут следующими

Примечание: если файл не сохраняется в указанное расположение, например, на диск C, с сообщение «У вас нет разрешения на сохранение файлов в этом месте», сохраните его в папку «Документы» или на рабочий стол, а затем скопируйте в нужное расположение (причина проблемы в том, что в Windows 10 для записи в некоторые папки нужны права администратора, а поскольку блокнот не был запущен от имени администратора, он не может сохранить файл в указанную папку).

Ваш файл .bat готов: если его запустить, будут автоматически выполнены все перечисленные в файле команды (при условии отсутствия ошибок и необходимости прав администратора: в некоторых случаях может потребоваться запускать файл bat от имени администратора: правый клик по файлу .bat — запустить от имени администратора в контекстном меню).


Запуск программы с правами администратора через bat

Примечание: в дальнейшем, если вы захотите отредактировать созданный файл, просто нажмите по нему правой кнопкой мыши и выберите «Изменить».

Существуют и другие способы сделать bat файл, но все они сводятся к написанию команд по одной команде в строке в текстовый файл в любом текстовом редакторе (без форматирования), который затем сохраняется с расширением .bat (например, в Windows XP и 32-битной Windows 7 вы даже можете создать файл .bat в командной строке с помощью текстового редактора edit).

:/>  Как исправить ошибки центра обновления Windows

Если у вас включено отображение расширений файлов (изменяется в панель управления — параметры проводника — вид — скрывать расширения зарегистрированных типов файлов), то вы можете просто создать файл .txt, затем переименовать файл, установив расширение .bat.

Запуск программ в файле bat и другие базовые команды

В командном файле вы можете запускать любые программы и команды из этого списка: https://technet.microsoft.com/ru-ru/library/cc772390(v=ws.10).aspx (правда, некоторые из указанных могут отсутствовать в Windows 8 и Windows 10). Далее — лишь некоторые базовые сведения для начинающих пользователей.

Чаще всего бывают следующие задачи: запуск программы или нескольких программ из .bat файла, запуск какой-то функции (например, очистка буфера обмена, раздача Wi-Fi с ноутбука, выключение компьютера по таймеру).

Для запуска программы или программ используйте команду:

start “” путь_к_программе

Если путь содержит пробелы, возьмите весь путь в двойные кавычки, например:

start “” “C:Program Filesprogram.exe”

После пути к программе можно также указать параметры, с которыми она должна запускаться, например (аналогично, если параметры запуска содержат пробелы, возьмите их в кавычки):

start “” c:windows
otepad.exe file.txt

Примечание: в двойных кавычках после start по спецификациям должно указываться имя командного файла, отображаемое в заголовке командной строки. Это необязательный параметр, но при отсутствии этих кавычек выполнение bat файлов, содержащих кавычки в путях и параметрах может пойти неожиданным образом.

Еще одна полезная возможность — запуск другого bat файла из текущего файла, сделать это можно с помощью команды call:

call путь_к_файлу_bat параметры

Переданные параметры при запуске можно прочитать внутри другого bat файла, например, мы вызываем файл с параметрами:

call file2.bat параметр1 параметр2 параметр3

В file2.bat можно прочесть эти параметры и использовать в качестве путей, параметров для запуска других программ таким образом:

По умолчанию, окно команд закрывается сразу после выполнения всех команд. Если нужно прочитать информацию внутри окна, используйте команду pause — она остановит выполнение команд (или закрытие окна) до нажатия любой клавиши в консоли со стороны пользователя.

Иногда, перед выполнением очередной команды нужно подождать некоторое время (например, до полного запуска первой программы). Для этого можно использовать команду:

timeout /t время_в_секундах

При желании, вы можете запустить программу в свернутом виде или развернутом видео с помощью параметров MIN и MAX перед указанием самой программы, например:

start “” /MIN c:windows
otepad.exe

Для закрытия окна команд после выполнения всех команд (хотя, обычно оно и так закрывается при использовании start для запуска), используйте команду exit в последней строке. В случае, если консоль все равно не закрывается после запуска программы, попробуйте использовать такую команду:

cmd /c start /b “” путь_к_программе параметры

Примечание: в данном команде, если пути к программе или параметры содержат пробелы, могут быть проблемы с запуском, которые можно решить так:

cmd /c start “” /d “путь_к_папке_с_пробелами” /b имя_файла_программы “параметры_с_пробелами”

Как уже было отмечено, это лишь очень базовые сведение о наиболее часто используемых командах в bat файлах. При необходимости выполнить дополнительные задачи, попробуйте найти нужную информацию в интернете (поищите, например, «сделать что-то в командной строке» и используйте эти же команды в файле .bat) или задайте вопрос в комментариях, я постараюсь помочь.

So how it works

• Batch runs the script, or BAT or CMD

:/>  Не отображается диск д после установки виндовс 7

• Script caller can have a long name spaces included in the call in quotes

• Give back all the parameters call the master script passed from the command line, as if there was no transmission of the call and start something from scratch, also with special characters, like exclamation marks (!) and percentage (%), and also with parentheses ()

• Holds a master script location if the call took place in the directory where this script is the master

Выполнение приложений от имени Администратора без запроса UAC


Запуск программы с правами администратора через bat

Таким образом, возникает задача выполнения программ или командных файлов от имени администратора при включенном UAC, но без запроса на разрешение их запуска.
Одним из способов решения подобной задачи является использование специально подготовленной задачи стандартного Планировщика заданий Windows.
Необходимо создать задачу для запуска командного файлат с повышенными привилегиями.
Переходим в ”Панель управления” – ”Администрирование” – ”Планировщик заданий” – ”Библиотека планировщика заданий”, выбираем в меню ”Действия” – ”Создать простую задачу”.
С помощью мастера создания простой задачи, создаем задачу, например, с именем Admbat


Запуск программы с правами администратора через bat

В качестве триггера запуска можно выбрать режим ”Однократно” и установить дату начала выполнения задачи уже прошедшим днем, чтобы служба планировщика не могла выполнить ее запуск в ненужное нам время.


Запуск программы с правами администратора через bat

В качестве действия выбираем ”Запустить программу”


Запуск программы с правами администратора через bat

Ставим галочку на ”Открыть окно ”Свойства” для этой задачи после нажатия кнопки ”Готово” ”. В свойствах задачи включаем режим ”Выполнить с наивысшими правами”.


Запуск программы с правами администратора через bat

Если выбрать режим ”Выполнять для все пользователей”, то задача не будет открывать никаких окон в сеансе текущего пользователя, что не очень удобно в режиме тестирования командного файла.
В качестве теста можно использовать команду:

netstat –b – отобразить список соединений с именами создавших их программ. Параметр b требует административных привилегий. Содержимое командного файла:

Запрошенная операция требует повышения.
а затем, с помощью задачи Admbat планировщика заданий – с повышенными привилегиями, т.е. под учетной записью с правами администратора – на экран будет выведен список соединений с именами программ.

И выполнить задачу планировщика Admbat командой:

schtasks /run /tn Admbat

Задачу планировщика можно создать и из командной строки с помощью утилиты schtasks.exe и разрешить ее выполнение с правами администратора, задав параметр /RL HIGHEST

Естественно, данная команда должна выполняться в контексте учетной записи с правами администратора.

WHOAMI /PRIV – отобразить действующие привилегии текущего пользователя.

Так, например, удаленное выключение компьютера доступно только в контексте учетной записи администратора. В этом случае, в результатах вывода WHOAMI присутствует строка “SeRemoteShutdownPrivilege”. С помощью команды find ищем эту строку в результатах вывода команды whoami /priv и если она найдена (переменная ERRORLEVEL равна нулю) – командный файл выполняется с правами администратора. Например:

Можно создать командный файл, проверяющий наличие прав администратора, и при их отсутствии, выполняющий свой перезапуск с использованием повышения привилегий за счет задачи планировщика Admbat.

Дополнительная информация по теме:

Планировщик заданий Windows

Список команд CMD Windows

Управление планировщиком заданий в командной строке Windows

Оставьте комментарий