Как сделать чтобы батник запускался от имени администратора
Перейти к содержимому

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

  • автор:

Запуск скрипта с повышенными привилегиями [руководство]

Вариант 1) Правая кнопка мыши по Batch-файлу "Запуск от имени администратора".

Вариант 2) Сначала запустить командную строку (см. ниже), а в ней запустить на исполнение Batch-файл.

Запуск bat скрипта с пониженными привилегиями
Привет ☺ Как в bat скрипте, который запускается с правами администратора прописать запуск.

Изменение рабочего каталога при запуске батника с повышенными привилегиями
C:\Users\adm>echo Рабочий каталог — C:\Users\adm Рабочий каталог — C:\Users\adm никакого system32

Запуск скрипта с привилегиями администратора
Здравствуйте. Создал службу windows 10. Она должна запускать скрипт Powershell. Но что-то не.

Почему эта программа запускается с повышенными привилегиями?
Ресурса #24 нет, слой совместимости тоже не прописан, так откуда тогда знак щита? Как это у меня.

Как запустить командную строку от имени Администратора (с повышенными правами).

Способ 1:

Пуск
В окно поиска ввести CMD
Нажать Ctrl + Shift + Enter.

Способ 2:

Войти в диспетчер задач (Ctrl + Shift + Esc)
Вкладка "Процессы", кнопка "Отображать процессы всех пользователей".
Файл, Ctrl + Клик ЛКМ (левая кнопка мыши) по пункту "Новая задача (Выполнить . )".

Способ 3. Запуск Batch-файла с повышенными правами:

2. Создайте ярлык к этому файлу.

3. Зайдите в свойства ярлыка, выберите вкладку "Ярлык", кнопка "Дополнительно", отметьте галкой "Запускать от имени администратора".

Ярлык для запуска с запросом элевации прав готов.

  • Открытие командной строки с правами администратора в нужной папке
  • Добавление соответствующего пункта контекстного меню с помощью установщика CmdHereAsAdmin.inf (программа PowerToy).
  • Рассматриваются Windows 7 и 8.
  • Как открывать файлы из контекстного меню с полными правами
  • Повышение прав из раздела реестра “runas”
  • Повышение прав сторонними средствами
  • Тонкости, которые нужно учитывать, при работе с UAC
  • Практика: создание архива с полными правами из контекстного меню
  • С какими правами работать?
  • Назначение контроля учетных записей
  • Администратор или пользователь?
  • Повышение прав с запросом UAC и без него
  • Современные программы и старые приложения
  • Виртуализация файлов и реестра
  • Использование сторонних утилит для повышения прав
  • Запуск программ без запроса UAC

Лучший ответСообщение было отмечено как решение

Решение

Элевация прав запуска BAT-файла (отображается диалог контроля учетных записей UAC)
Код: Dragokas

В ОС Windows Vista/7/8. запись в системные папки (такие как Windows, System32, корень диска C: ), запись в реестр (например, в улей HKLM) требует прав администратора.

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

1) Через JScript-вставку без создания вспомогательного файла:

Из минусов обоих способов: батнику нельзя передавать аргументы запуска.

2) С использованием внешнего VBScript-сценария.

Приведенный пример создает временный VBS-скрипт, через который методом ShellExecute, verb — runas запускает повторно BAT-файл с повышенными правами.

3) С использованием mshta (способ от ComSpec):

Start Admin Console.cmd
Запускает новое окно консоли с повышенными правами и переходит в папку, где сам находится
Ожидает ввода команд от пользователя.

Как запустить VBScript, JScript с повышенными привилегиями?

1) Создайте к Вашему скрипту ярлык -> правой кнопкой мыши (ПКМ) по файлу скрипта -> "Создать ярлык".

2) В свойствах ярлыка (ПКМ по ярлыку)

на вкладке "Ярлык":
— в поле "Объект" допишите слева слово WSCRIPT и знак пробела
— нажмите "Применить"
— нажмите "Дополнительно"

Поставьте галочку "Запускать от имени администратора".

Нажмите "ОК" в обоих окнах.

Значок скрипта изменится на такой:

Теперь можете запускать скрипт через этот ярлык (с повышенными привилегиями).

Будет задан вопрос от "Контроля учетных записей", на который следует ответить утвердительно.

а можно допилить этот код так чтобы после согласия на разрешение прав окно батника пропадало а не висело пока выполняется команда? Заранее спасибо!

::
:: <— Здесь код Вашей основной программы
::

:: Эту строку не трогать. Ниже ничего не писать.
*/new ActiveXObject(‘Shell.Application’).ShellExecute (WScript.ScriptFullName,’Admin’,»,’runas’,1);

вот вставляю этот код в батник и он перестает висеть (открывается на секунду и закрывается и команда продолжает работать без окна)

но перестает запускаться от администратора(

можно ка кто эти два кода подружить?

Сообщение от valli_vasia

второй код я писал в предыдущем сообщении)

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

Как создать BAT-файл в Windows 11/10 (свой скрипт для запуска программ (игр) с высоким приоритетом, очистки папок, форматирования дисков, флешек и пр.)

BAT-файлДоброго дня!

На меня тут недавно «наехали» (в хорошем смысле 😊): «Дескать. говоришь вот создать BAT-файл*, а как это сделать-то? Учишь непонятно чему. лишь плохому. «.

* Для справки.

BAT-файл — текстовый файл со списком команд. При его запуске (открытии) — интерпретатор ОС выполняет их одну за одной. Это очень удобно для выполнения повторяющихся задач (например, если вам нужно запускать каждый раз игру с высоким приоритетом, или чистить определенную папку, и др.).

*

Собственно, в рамках сегодняшней статьи решил исправиться — кратко показать, как их создавать, и дать несколько примеров для решения самых популярных рутинных задач (довольно часто для этого BAT’ники и используют).

Думаю, что многие пользователи смогут слегка до-корректировать мои примеры и создадут для себя вполне рабочие BAT-файлы. 😉

ускорение ПК

Создание BAT файлов: на примерах

Основы! С чего начать (Вариант 1: проверка пинга)

Для начала покажу, как создать простейший BAT-файл для проверки пинга (для общего понимания процесса. ).

Первым делом необходимо создать самый обычный текстовый файл (такой же, как вы создаете в блокноте). Достаточно кликнуть правой кнопкой мыши по любому свободному месту на рабочем столе и выбрать в меню «Текстовый файл» (Text Document). 👇

Создаем текстовый документ

Создаем текстовый документ

Название файла у этого текстового документа может быть любым (но лучше использовать англ. символы).

Далее следует открыть этот файл и вписать в него нужные команды. В своем примере я впишу только одну (если вы делаете это впервые — рекомендую повторить ее вместе со мной):

Разумеется, файл нужно сохранить. Кстати, вместо ya.ru можно указать google.ru или любой другой адрес (обычно, многие указывают свой игровой сервер, и запускают этот BAT’ник, когда в игре наблюдаются лаги).

Копируем в него нашу команду и сохраняем файл.

Копируем в него нашу команду и сохраняем файл.

Затем обратите внимание на расширение файла — у текстового файла оно «.TXT». Кстати, если у вас не отображаются расширения — можете 📌 прочитать эту заметку или просто введите в командной строке две вот эти команды (последовательно):

reg add «HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced» /v HideFileExt /t REG_DWORD /d 00000000 /f

taskkill /F /IM explorer.exe & start explorer

Нам нужно переименовать файл так, чтобы вместо «.TXT» — было новое расширение «.BAT» !

Меняем расширение TXT на BAT

Меняем расширение TXT на BAT

Теперь достаточно кликнуть по «нашему» файлу правой кнопкой мыши и запустить его от имени администратора — автоматически появится окно командной строки с проверкой пинга. Удобно? Вполне! 👌

Идет проверка пинга!

Идет проверка пинга!

Чтобы отредактировать BAT-файл (и каждый раз не переименовывать его туда-сюда) — рекомендую вам установить блокнот Notepad++ (уже ранее добавлял его в подборку).

После установки Notepad++ — достаточно кликнуть ПКМ по BAT-файлу — и в появившемся меню выбрать опцию редактирования.

Редактировать BAT

Вариант 2: запуск игры с высоким приоритетом + откл. авто-поиска Wi-Fi сетей

Этот скрипт рекомендуется попробовать пользователям ноутбуков, кто играет в сетевые игры.

*

Этот BAT-файл я создал на одном своем рабочем ноутбуке (он уже довольно «старый», и нередко притормаживал при запуске игр). Однако, благодаря нескольким строкам кода — удается вполне комфортно играть. 👌

Что за строки нужно добавить в BAT (выделены коричневым):

cmd.exe /c start /high /D «C:\Games\Counter-Strike 1.6\» hl.exe -game cstrike -appid 10 -nojoy -noipx -noforcemparms -noforcemaccel
netsh wlan set autoconfig enabled=no interface=»Wi-Fi»
pause
netsh wlan set autoconfig enabled=yes interface=»Wi-Fi»
pause

  1. запускает игру CS с высоким приоритетом (это позволяет снизить кол-во притормаживаний в играх). Разумеется, вместо строки «C:\Games\Counter-Strike 1.6\» hl.exe — вы можете указать свою игру и ее расположение;
  2. отключает авто-поиск Wi-Fi сетей (это снижаем пинг и увел. скорость сети // правда не дает подключаться к другим Wi-Fi сетям). Кстати, вместо «Wi-Fi» — нужно указать название своего адаптера (посмотрите так: нажмите Win+R, и используйте команду ncpa.cpl ) ;

Название адаптера

Вариант 3: создание резервной копий файлов и точки восстановления в Windows

Приведу наиболее простую и довольно надежную команду для создания резервных копий файлов и папок:

Она копирует один каталог в другой (просто, без вопросов и расспросов). Если вам нужно скопировать 2 или 3 (или более) каталогов — просто создайте несколько подобных строк.

  1. C:\Games — тот каталог, который будем копировать (все подкаталоги и файлы из них тоже будут скопированы);
  2. D:\backup — тот каталог, куда будет всё скопировано;
  3. /f — выводит имена файлов (чтобы вы видели, что происходит);
  4. /i — создает новый каталог, если на диске «D:» нет каталога «backup» (см. строку выше);
  5. /y — перезаписывает старые файлы новыми;
  6. /s — копирует каталоги и подкаталоги, если в них есть какие-то файлы.

Для создания точки восстановления можно использовать следующий код:

wmic.exe /Namespace:\\root\default Path SystemRestore Call CreateRestorePoint «MyRestorePoint», 100, 7
pause

После запуска подобного BAT-файла — точка восстановления будет создана в авто-режиме! Это очень удобно делать перед установкой нового софта, железа и пр. (чтобы проверить есть ли точка — нажмите Win+R , и используйте команду: rstrui ). 👇

Точки восстановления создаются!

Точки восстановления создаются!

Вариант 4: очистка временных папок

Здесь есть несколько вариантов «подхода». Я приведу один из самых простейших, см. 4 строки ниже. 😉

del /q /f /s %WINDIR%\Temp\*.*
del /q /f /s %SYSTEMDRIVE%\Temp\*.*
del /q /f /s %Tmp%\*.*
del /q /f /s %Temp%\*.*

  • BAT-файл с этими строками чистит временные папки в Windows (как правило, в них скапливается один «мусор», которые занимает лишь место на диске);
  • %WINDIR%\Temp\ — это папка «C:\Windows\Temp»;
  • %SYSTEMDRIVE% — это системный диск «C:\»;
  • *.* — маска для удаления всех файлов;
  • /q /f /s — удаление всех каталогов и подкаталогов (без вопросов).

📌 Что можно еще добавить в наш скрипт:

  • del /q /f /s %WINDIR%\Prefetch\*.* — эта строка очистит папку Prefetch (в ней сохраняется кэш от различного софта. При удалении той или иной программы — кэш в папке остается, и со временем — ее размер может разрастись);
  • del /q /f /s %SYSTEMDRIVE%\*.log — удаление всех Log-файлов с системного диска (это файлы, в которых содержится история запуска программы, например. Во многих случаях они бесполезны). Большинство программ, кстати, ведут логи, со временем они разрастаются и могут отнять сотни МБ на диске;
  • При помощи предыдущей команды можно удалить и другие файлы с системного диска (например, с расширением .tmp или .bak // достаточно поменять лишь концовку команды) — однако, будьте аккуратны, легко можно что-нибудь запороть!

📌 Вариант 5: форматирование диска/флешки (с ручным выбором буквы, имени и файловой системы)

Этот мини-скриптик может быть весьма полезный (например, если у вас «подвисает» проводник при обращении к флешки // или не запускается управление дисками).

*

Собственно, здесь все делается аналогично. Чтобы не удлинять процесс — вот вам сразу же сам скриптик (ссылка на RAR-архив с BAT-файлом), который «набросал» за 5 мин. (и еще 10 потратил на проверку 😉). Его текст (выделен коричневым):

@echo off
wmic logicaldisk get name, VolumeName, Size, FileSystem, NumberOfBlocks, description
set /p adisk=»Введите букву диска/флешки для форматирования: »
set /p named=»Введите имя для диска/флешки (любое, например, my_disk): »
set /p number=»Нажмите l — для формат. в NTFS, 2 — в FAT32, 3 — для в ExFAT. Ваше число: «

if «%number%» == «1» (
format %adisk%: /FS:NTFS /Q /V:%named%
pause
exit /b
)

if «%number%» == «2» (
format %adisk%: /FS:FAT32 /Q /V:%named%
pause
exit /b
)

if «%number%» == «3» (
format %adisk%: /FS:ExFAT /Q /V:%named%
pause
exit /b
)

Он довольно простой, но будьте с ним аккуратны! Если укажите не ту букву накопителя — можно легко отформатировать не тот диск.

Как он работает (запускать под именем администратора):

  1. сначала он показывает информацию по всем подключенным дискам (и их буквы);
  2. далее запрашивает букву диска/флешки, которую нужно отформатировать (в своем примере я ввел G и нажал Enter) ;
  3. затем нужно ввести название диска — может быть любым (главное, чтобы название было коротким и лучше использовать только латиницу!). Я использовал my_flash ;
  4. после выбрать файловую систему (их тут три), и нажать Enter;
  5. если все введено корректно — диск/флешка будет отформатирована! 👌

Пример работы BAT-файла

Пример работы BAT-файла для форматирования флешки

Как запускать BAT-файл от имени администратора (и по расписанию)

Самый простой вариант — нажать ПКМ по BAT-файлу и в контекстном меню выбрать «Запуск от имени администратора» . См. скрин ниже. 👇

Нажать ПКМ по BAT-файлу

Нажать ПКМ по BAT-файлу

Можно нажать ПКМ по BAT-файлу и создать для него ярлык на рабочем столе. См. скрин ниже. 👇

Создание ярлыка к BAT-файлу

Создание ярлыка к BAT-файлу

Далее в свойства ярлыка поставить галочку, что задача должна выполняться от имени администратора. Таким образом при каждом двойном клике по этому ярлыку — BAT’ник будет запускаться от админа. 👌

Свойства ярлыка — запускать с админ. правами

Свойства ярлыка — запускать с админ. правами

В планировщике заданий Windows (чтобы его открыть нажмите Win+R , и используйте команду control schedtasks ) можно настроить запуск BAT-файла в нужное время и с нужными правами (т.е. автоматически). Это может быть весьма удобно, и серьезно упростить работу со множеством задач (очистка Windows от мусора, создание бэкапов и пр.) — точно никогда не забудете!

Более подробно о том, как создать задачу в планировщике заданий — я 📌 рассказывал в этой заметке.

Триггеры - когда выполнять задачу, расписание

Триггеры — когда выполнять задачу, расписание

Если при выполнении BAT-файла появятся крякозабры вместо русского текста 👌

Чаще всего это бывает с теми BAT, в которых есть русские символы и выставлена «неправильная» кодировка (например, они часто встречаются в пути к папке: «C:\Games\Лучшие игры» ). Кстати, в этом случае BAT-файл работать не будет: после попытки выполнения операции с «крякозабрами» — появится ошибка и окно CMD будет закрыто.

Is it possible to automatically run a batch file as administrator

I am wondering whether it is possible to automatically open a batch file as admin when you double-click on the batch file, because the commands need to be run with administrative rights.

Note: I already know about the solution of right-clicking on the file and clicking on Run As Administrator , but this is not an automatic solution.

Sildoreth's user avatar

9 Answers 9

Yes, you’re able to run a batch file with administrative rights. Unfortunately, you can’t do this directly from the batch file it self. You would need to first create a shortcut of that batch file and change the properties for that shortcut in order to make this work.

To create a shortcut, there are many ways but the simplest and the fastest way is by using the Send to option in the context menu.

Of course you can send the shortcut to where ever you would like. To elevate the batch file to run as admin, follow the steps below:

  1. Right-click the shortcut you just created (should be on the desktop or where ever you send it), and select ‘Properties’
  2. Under the Shortcut tab, click the Advanced. button.
  3. Check the Run as administrator checkbox and press OK to both the modal window and the main properties window.
  4. Run the shortcut by double-clicking it and the batch file should run as administrator.

Chris Halcrow's user avatar

1" == "" start %USERPROFILE%\Desktop\Shortcut.lnk && GOTO :EOF right below @echo off , and make the shortcut link to program.bat a instead of just program.bat .

As posted in an answer by Ben Gripka to another question:

Create a shortcut to that Batch file

Right-click the shortcut file

Click advance button to find a checkbox for running as administrator

Check the screenshot below

Screenshot

The accepted answer does indeed work. But I found that in Windows 7, I had to endure the UAC dialog each time the shortcut is clicked. This IMHO detracts significantly from the «automatically» in this question!

Then I found that in my own situation, the .bat file in question is to be run by Task Scheduler. In this case, checking the Run with highest privileges option on the General tab of the task, nicely takes care of the problem. The .bat is then run as administrator without any hassles.

PS: I didn’t realize I couldn’t upload images on this answer, ’cause I have a nice little screenshot sitting right with me now! Or can I?

You can use my script Batch_Admin to automatically elevate the Administrator for use in any type of Batch own script, or BAT or .CMD. This function ensures the work on a standard environment, with standard tools and in the same way in different Windows systems. It uses several standard and built-in Windows commands. Do not use any other external scripts. It can be used to call any program as Administrator, not just scripts Batch. It suffices to create a small script, which then call the program that requires permission Administartor. Place this in any search PATH folder (from %PATH%).

To use it, you simply insert the following line (exactly as) in its parent Batch script, which is to be run as Administrator. This is best done at the top of our parent script and it is best that first, which will be called via the CALL further, some sub-scripts (see detailed explanation below).

This can be inserted inside any child scripts, called by CALL syntax. To display a message while it is still does not have Administrator privileges, eg. for 5 seconds before calling Batch_Admin set the variable «ShowAdminInfo» on the number of seconds

So how it works:

• Calls UAC.ShellExecute through VBScript to pick up user permissions

• Batch runs the script, or BAT or CMD

• 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

• Auxiliary displays a message if we set before ourselves the variable «ShowAdminInfo», eg. for 5 seconds which can prevent the immediate passage of the rights of the Administrator giving additional information and the possibility of an informed decision. Examples of setting that must be set: SET ShowAdminInfo=5 By default, because this variable is not defined, it does not display.

• The script is calling also in the system search path % PATH% and from network resource, such as: \Computer\share\test.bat

• Prevents misunderstandings in writing the necessary auxiliary files when the script calls several Batch_Admin almost at the same time. It uses the random number from 1 to 100

• But, the best is to use it on parent script. The transition to Administrator rights always requires that you run the script completely again, in a new window, in a new environment, without recourse to the the variables are set previously in our script and values of these variables did not pass then to call as Administrator. Just the script will be executed again.

Below a complete script Batch_Admin. Extended information about this is on my site.

Запуск батника от имени администратора.

Sapfira

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

Похожий контент

Здравствуйте.
Компьютер очень часто не видит ни одной сети wi-fi. Иногда после перезагрузки эта проблема решается, но ненадолго, через какое-то время все сети опять пропадают. Иногда перезагружаться приходится раз по 5.
Также периодически появляется синий экран со следующими ошибками: CLOCK_WATCHDOG_TIMEOUT, IRQL_NOT_LESS_OR_EQUAL, DRIVER_POWER_STATE_FAILURE
До этого пытались помочь в этой теме

Очень надеюсь на вашу помочь.
Заранее спасибо.

Думаю, что после того, как словил вирус и почикал какие-то файлы, перестали отображаться доступные wi-fi сети. Интернет есть, но у меня есть доступ к двум сетям и надо часто переключаться. Поэтому хотелось бы восстановить возможность простого переключения.
Простые вещи, про которые рассказывается на разных сайтах, уже перепробовал. Не помогло.

Есть вопрос, возможно, кто-то сможет подсказать, куда копать. Ситуация: закрытый, находящийся в спящем режиме, чехле и рюкзаке макбук самовольно цепляется к беспроводной сети и что-то куда-то отправляет (см. картинку). В настойках энергосбережения Power Nap (эппловский аналог Connected Standby) запрещён при питании от аккумулятора, никаких процессов или служб, мешающих компу спать, не запущено. В логах ничего путного найти не удалось (прикладываю), поиск в Сети даёт невнятный результат (дескать, это нормальное поведение для макбука). Но меня беспокоят две вещи:
1) за ночь он таким макаром выедает до четверти ёмкости батареи;
2) мне не нравится, что мой компьютер ходит в Интернет без меня.

Кроме того, старенький MacBook Pro 2012 года так себя не ведёт — он если засыпает, то с концами и в Сеть не лезет. MacBook Air 2013 года у товарища — тоже. А вот Pro 2018 года ведёт себя так, как описано выше. Временное решение — вырубать wi-fi на ночь. Тогда он, суда по логам, несколько раз просыпается, пытается залезть в Сеть, обламывается и от огорчения засыпает обратно. Расход батареи получается 1–2 процента за 12 часов. Но может быть, его всё же можно как-нибудь программно отучить по интернетам шастать без хозяина?

system.log Mac Analytics Data.log wifi.log

Вальдемар

Здравствуйте !
В компьютере стоит режим семейной фильтрации через Яндекс.DNS.
Из ответа поддержки Яндекс.DNS :
«Для настройки DNS через смартфоны требуется поддержка протокола DoH. К сожалению, на текущий момент доступ к нашим публичным серверам по протоколам DNS over HTTPS и DNS over TLS не поддерживается. Но, вполне возможно, такая поддержка появится в недалеком будущем.
Сейчас вы можете настроить в смартфоне сервера Яндекс.DNS только для Wi-Fi-подключений.»

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *