Форум программистов, компьютерный форум, киберфорум
Наши страницы
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Marshak90
0 / 0 / 0
Регистрация: 26.05.2018
Сообщений: 16
1

Если bat-ник запущен с правами администратора,то выполнить команду

02.07.2018, 18:53. Просмотров 840. Ответов 4
Метки нет (Все метки)

Всем здарова, хочу написать батник, когда вы его открываете то он проверяет запущен ли он с правами админа.Если да, то выполняет команду, если нет, то пишет, мол, запустите с правами админа и pause>nul, а дальше после того как мы клацнем любую кнопку, он выходит тобеж exit.
Не хочу задействовать vbs, powershell и т.д, делаю для того чтобы можно было ввести данные в реестр, также чтобы отправя user`у батник он смог разобраться сам, просто разные люди бывают, напишут что что-то не робит и всё, дальше ничего не сделаешь

Придумал маленькую хитрость, и вроде работает, но есть ли альтернатива?
Кликните здесь для просмотра всего текста

Bash
1
2
3
4
5
6
7
8
9
10
md "C:\Program Files (x86)\123"
cls
if %errorlevel%==0 (goto done
) else (
echo Запустите батник с правами админа!
echo (1.Выделяем батник)
echo (2.ПКМ)
echo (3.Запуск с правами администратора)
pause >nul
exit
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.07.2018, 18:53
Ответы с готовыми решениями:

Запуск файла в директории с .bat, когда .bat запущен от имени администратора
Здравствуйте. Имею бат, он должен запускать файл "<тут директория батника>\n1.bat". Но если даже...

Как запустить bat-файл c правами администратора по умолчанию?
Добрый вечер уважаемые форумчане. Есть .bat (c кодом: ping google.es) на windows7 (x84 пиратка)....

Как узнать откуда запущен bat файл при запуске от имени администратора?
Есть bat файл, который работает только от админа. Мне нужно сделать так, чтобы он удалял файл в...

Условия в bat файле если запущен процесс
Всем привет! Помогите пожалуйста с такой проблемой: пытаюсь создать bat файл для спящего режима....

Проверять каждые 2-3 секунды, запущен ли файл 1.wav, если да, то запустить 1.bat
доброго времени суток подскажите пожалуйста как написать BAT CMD или VBScript который будет...

4
ixoyz
150 / 91 / 32
Регистрация: 01.06.2015
Сообщений: 346
Записей в блоге: 1
Завершенные тесты: 1
02.07.2018, 19:33 2
Цитата Сообщение от Marshak90 Посмотреть сообщение
Не хочу задействовать vbs, powershell
Зря. Попробуйте так
Windows Batch file
1
2
3
4
5
6
@echo off
if not "%1"=="UAC" (
    powershell start '%~dpnx0' -verb runas -arg 'UAC'
    exit /b
)
rem тело батника
батник сам себя перезапустит через UAC

В вашем варианте основной минус это то, что вы мусорите
Цитата Сообщение от Marshak90 Посмотреть сообщение
md "C:\Program Files (x86)\123"
Цитата Сообщение от Marshak90 Посмотреть сообщение
также чтобы отправя user`у батник он смог разобраться сам
Утверждение в корне не верное. Пользователь не должен в чём-то разбираться в принципе, он должен запустить и у него должно всё работать.
0
Marshak90
0 / 0 / 0
Регистрация: 26.05.2018
Сообщений: 16
02.07.2018, 19:47  [ТС] 3
ixoyz, имелось в виду что юзер мог понять что к чему, не вникая, вы неправильно меня поняли

Добавлено через 1 минуту
ixoyz, также у меня теперь другой есть вариант:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
md "C:\Program Files (x86)\123"
cls
if %errorlevel%==0 (goto done
) else (
mode con cols=50 lines=10
echo Запустите батник с правами админа!
echo (1.Выделяем батник)
echo (2.ПКМ)
echo (3.Запуск с правами администратора)
pause >nul
exit
:done
mode con cols=100 lines=40
echo Y| rd "C:\Program Files (x86)\123"
cls
0
YuS_2
Любознательный
1086 / 621 / 193
Регистрация: 10.03.2016
Сообщений: 1,437
02.07.2018, 20:27 4
Лучший ответ Сообщение было отмечено Marshak90 как решение

Решение

Цитата Сообщение от Marshak90 Посмотреть сообщение
у меня теперь другой есть вариант:
Зачем создавать каталог, потом удалять...
Все проще можно сделать:
Windows Batch file
1
2
3
4
5
6
7
8
9
@echo off
echo Administrative permissions required. Detecting permissions...
net session >nul 2>&1
if %errorLevel% == 0 (
    echo Success: Administrative permissions confirmed.
) else (
    echo Failure: Current permissions inadequate.
)
pause
требуемые команды добавить труда не составит, надеюсь...
1
Marshak90
0 / 0 / 0
Регистрация: 26.05.2018
Сообщений: 16
02.07.2018, 20:41  [ТС] 5
YuS_2, Спасибо, я немножко переделал, получилось следующие:
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@echo off
chcp 1251>nul
net session >nul 2>&1
if %errorLevel% == 0 (
    goto done
) else (
mode con cols=50 lines=10
echo Запустите батник с правами админа!
echo (1.Выделяем батник)
echo (2.ПКМ)
echo (3.Запуск с правами администратора)
pause >nul
exit
)
0
02.07.2018, 20:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.07.2018, 20:41

Если ОС — Windows XP, то выполнить один BAT-файл, а если ОС — Windows 7, — другой BAT-файл
Доброго времени. Кто будет добр и подскажет решение. Надо чтобы bat определял версию ОС (XP или 7)...

Проверять, запущен ли процесс, а если он не запущен, то запускать его
Всех приветствую. В интернете не нашёл ответа на свой вопрос. Очень нужен vbs-скрипт, который...

Проверять, запущен ли процесс, а если не запущен, то выполнять действия
Всем привет! Помогите пожалуйста с такой проблемой: пытаюсь создать bat для циклической проверки...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru