Запуск файлу bat під час запуску в якості адміністратора в Windows 7


33

Наразі ми успішно запускаємо сценарій запуску у вигляді файлу bat, у Windows 7 (я вставив новий запис реєстру з шляху до файлу bat як значення в

Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run).

Тепер мені потрібно запустити інший файл при запуску, але з підвищеними правами (як адміністратор), і без вручну підтвердження підказки.

Як я можу досягти цього, переважно без зовнішніх програм?


Чи має це рішення? serverfault.com/questions/429364/…
Radek

Я збентежений. Хіба здатність обійти UAC не викликає великого занепокоєння щодо безпеки? Хіба це не перемагає призначення навіть існуючого?
Kyle Delaney

Відповіді:


23

Див. Цю статтю: Зробіть Vista запуск програм обмеженого доступу UAC при запуску з планувальником завдань .

У цій статті показано, як за допомогою планувальника завдань запускати програми запуску з підвищеними привілеями. У вашому випадку можуть знадобитися невеликі зміни, але стаття добре написана скріншотами.


3
Було б добре, якби це не було лише посиланням. :)
Ƭᴇcʜιᴇ007

1
@ ʜcʜιᴇ007: Існує багато повних підручників для цієї добре відомої процедури, яка досі діє сьогодні після Vista. Це дуже давня відповідь, і я, напевно, сьогодні б відповіла більш детально, але я також не впевнений, що я погоджуюся з останніми тенденціями на СУ наполягати на довгих підручниках. Не кожна відповідь повинна бути міні-підручником, і ця відповідь описує принцип і посилання на твердий сайт.
harrymc

2
Я відчуваю, що це може стати битвою титанів! Але насправді, я погоджуюся з @ ʜcʜιᴇ007 на це: посилання хороші, але вони можуть погано, надаючи відповіді на такі питання безглуздими в майбутньому.
music2myear

1
@ music2myear: запит Google має близько 369 000 результатів! Багато хто з них набагато краще, ніж я міг / міг би зробити.
harrymc

2
Тоді замість розміщення "відповіді", що є по суті просто lmgtfy, ви могли б просто розмістити посилання на запит Google як коментар до початкової відповіді. Але тоді ви не отримуєте репліка для публікації коментарів, тепер ви?
Synetech

3

Ви думали про інший підхід? Або групова політика для налаштувань еквівалентного реєстру, а також встановлення пакетного файлу як групової політики. Можливо, ви навіть можете запустити його як комп'ютерний сценарій, а не як скрипт користувача.

Почніть з gpedit.msc. Тим не менш, він потребує Ultimate або одного з інших вершин.


3

Створити два пакетних файли:

StartAs.bat містить щось на зразок:

runas /user:SomeLocalAdminAccount c:\Users\MyUser\StartupWhat.bat

StartWhat.bat містить команди, які потрібно виконати.


1
Проте запитує, що файл буде запущено з підвищеними привілеями
Joe Taylor

2

Утиліта AutoExnt, з набору ресурсів.

Служба AutoExNT дозволяє адміністратору налаштувати комп'ютер на основі Windows для запуску користувацького пакетного файлу під час першого запуску комп'ютера. Крім того, користувачеві або адміністратору не потрібно входити в систему під час запуску цього користувацького пакетного файлу.


2

hstart.exe - стороння сторона start.exe на http://www.ntwind.com/software/hstart.html

Виклик трохи біль, але він працює дуже добре.


Будьте обережні, рекомендуючи програмне забезпечення. Як написано, ваша відповідь може розглядатися як спам. Ваша відповідь повинна містити опис програмного забезпечення та спосіб його вирішення. Більше інформації: Як рекомендувати програмне забезпечення у відповідях?
bwDraco

Спасибі, але не дякую. Я не вважаю своєю відповідальністю, якщо люди помилково припускають неправильні речі через свій песимізм і гіркоту. У мене була така проблема, і це було моє рішення.
ClioCJS

1

runas / user: SomeLocalAdminAccount

Тут має бути так:

runas /noprofile /user:mymachine\administrator cmd

runas /profile /env /user:mydomain\admin "mmc %windir%\system32\dsa.msc

runas /env /user:user@domain.microsoft.com "notepad \"my file.txt\""

1
Проте запитує, що файл буде запущено з підвищеними привілеями
Joe Taylor

1

Може бути UACPass (безкоштовно) вирішить:

  • Встановіть програму.
  • Відкрийте вікно UACPass.
  • Перетягніть до неї програму, яку ви робите під час завантаження.

Виконано. Ця програма повинна запускатися як адміністратор без запрошення UAC.
Програма навіть має можливість вибору add to startup :-D.

Ваша програма працюватиме лише після входу (або, як мені здається).


-1

Ви також можете створити ярлик і вказати, що файл ярлика повинен бути запущений підвищеним.

(Це в деяких додаткових вікнах опцій.)


Це не працює для ярликів файлів bat. Спробуй це.
Joe Taylor

@JoeTaylor А як щодо створення ярлика до cmd.exe і даючи bat файлу в cmdline?
Werner Henze

@werner Henze - ви пробували?
Joe Taylor

@JoeTaylor: Це не працює для ярликів файлів bat. Що саме ви маєте на увазі? Прапорець "Запуск від імені адміністратора" доступний для ярликів до файлу bat і для ярликів до cmd.exe (обидва тестувалися кілька хвилин тому). Але: запитувач не бажає, щоб UAC запрошення, і Checkbox буде Trigger UAC рядок (в залежності від налаштувань UAC).
Werner Henze

Запуск як підвищений, при придушенні UAC підказок не працює так, як відповідь має намір. Ось що я мав на увазі. Тому це не відповідь, яку шукав ОП.
Joe Taylor
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.