![]() |
как запустить из одного батника другой от имени администратора под семеркой
Как запустить из одного батника другой от имени администратора под семеркой с включенным UAC (Естествено, я понимаю, что все равно UAC выдаст предупреждение, но меня это устраивает). runas /user:Admin (admin, Администратор) не работает- пишет "вход не произведен" по причине "пользователь не существует" или "имеются ограничения".
И второе: Как изнутри батника определить что его запустили от имени администратора в семерке? (переменная %USERNAME% все равно содержит имя исходного пользователя). |
1. может, через ярлык (там вроде есть опция) ?.. типа: 'Start "" script.lnk'
2. ткнуться в запрещенный ресурс, пример: http://csi-windows.com/toolkit/csi-isadmin |
amel27,
1. проверю, но что-то не нравится мне это 2. Тоже такая мысль была. Думал можно по-нормальному (то есть команда для этого есть). Попробовал указанный там код- всегда выдавал YES почему-то. Добавлено: 2. Честно говоря, указанный код разбирать желания пока нет. Заметил, что при запуске от администратора переменная %CD% принимает вид C:\Windows\system32, поэтому попробовал так: Код:
set RunAdmin=false |
2. Команды, к сожалению, нет (именно на полномочия, а не на проверку членства в группе). Попробуйте посмотреть здесь: CMD/BAT: наличие административных привилегий у текущего пользователя. Там есть как и тот же принцип, так и другой способ. Проверять, годится ли хоть что-то оттуда для «Windows 7», предстоит Вам.
Если выйти за рамки тематики, то есть интересная библиотека «%systemroot%\system32\compatui.dll»: vbscript: некоторые интересные объекты — опрос мнения с функцией «.CheckAdminPrivileges()» (есть ли она в умолчальной поставке «Windows 7» — равно не знаю [но не откажусь от Ваших комментариев, если она есть]). seriych, а, может быть, стоит задействовать для сего PowerShell из командного файла, а? Он ведь вроде как умеет исполнять код из своей командной строки? Я вот буквально сегодня смотрел пример подобного использования (если я всё правильно там понял; сам я, к сожалению, пока не работаю с PowerShell). |
Цитата:
По поводу остального завтра посмотрю, а то сегодня устал дико. |
Цитата:
|
После выходных со свежими мыслями все проверил
1. С ярлыком все работает. Создаем исполняемый батник, делаем на него ярлык и ставим в опциях ярлыка "Запускать от имени администратора". Работоспособность сохраняется при копировании обоих файлов в другую папку или на другой комп. 2. Метод с сайта работает, надо только для русской версии заменить в коде "Not found" на "*Ґ **©¤Ґ*" или "не найден" (в дос-кодировке). Мой метод с %CD% вроде работает также, если мы точто запускаем батник не из %WinDir%\system32. |
У меня такая проблема: у меня на переносном жестком диске батник который на ХП делал определенные операции:
Как заставить его тоже делать на семерке. 1. Есил я его просто запускаю то мне выдается ошибка о не возможности удаления rd /s /q Updates . 2. Если я его запускаю от имени администратора то при выполнении команды cd \ я оказываюсь на диске С:\ , а не в корне портативного жёсткого (естественно он не находит ни папки Updates ни пути к проге wget.exe ) 3. Приходится вручную удалять папку Updates (это самый простой способ который я нашел), и запускать без каких либо прав админа, тогда у меня скачиваются базы к антивирусам. Но это крайне неудобно, к тому же данный батник я запускаю с панели Total Commander. Цитата:
|
Цитата:
|
amel27, Спасибо огромное, работает!!! еще хотелось бы знать расшифровку этой строчки"cd /d %~d0\", очень интересно что чего делает, т.к. самостоятельно я такое не составил бы.
И еще вопрос как сделать что б этот батник с панели Total Commander запускался с админскими правами (предупреждение UAC меня устраивает). |
|
Доброго времени! Вопрос как сделать так чтобы звук в динамике был слишен удаленному клиенту к которому я подключаюсь терминально, а не мне. Тоисть я подключаюсь терминально к клиенту запускаю некий простенький bat-файл которий содержит команду @echo • (для пищалки через системный динамик ПК) и все хорошо пищит но только мне, а ни клиенту, а хотелось бы наоборот.
|
Коллеги я придумал другую проверку
Код:
rem # Проверка UAC |
Время: 05:46. |
Время: 05:46.
© OSzone.net 2001-