34

В настоящее время я успешно запускаю сценарий запуска в виде файла bat в Windows 7 (я вставил новую запись в ключ реестра с путем к файлу bat в качестве значения в

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

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

Как мне этого добиться, желательно без внешних программ?

8 ответов8

23

См. Эту статью: Заставьте Vista запускать программы с ограниченным доступом UAC при запуске с помощью Task Scheduler.

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

3

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

Начните с gpedit.msc. Тем не менее, он нуждается в Ultimate или одном из других топовых выпусков.

3

Сделайте два пакетных файла:

StartAs.bat содержит что-то вроде:

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

StartWhat.bat содержит команды, которые вы хотите запустить.

2

Утилита AutoExnt, из Resource Kit.

Служба AutoExNT позволяет администратору настроить компьютер под управлением Windows для запуска настраиваемого пакетного файла при первом запуске компьютера. Кроме того, пользователь или администратор не обязаны входить в систему во время выполнения этого пользовательского пакетного файла.

2

hstart.exe - сторонняя замена start.exe по адресу http://www.ntwind.com/software/hstart.html

Этот вызов немного болезненный, но он работает очень хорошо.

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

Может быть, UACPass (бесплатно) решит это:

  • Установите программу.
  • Откройте окно UACPass.
  • Перетащите на него программу, которую вы притворяетесь запустить при загрузке.

Готово. Эта программа должна теперь работать как администратор без запроса UAC.
В программе даже есть возможность add to startup :-D.

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

-1

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

(Это в некоторых дополнительных опциях.)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .