Показать полную графическую версию : [решено] Установить галочку "Запуск от адм" на приложении
skeletor
17-01-2012, 20:05
Есть много компов с Windows7 и нужно на них всех установить возможность запуска приложения как администратор. Что бы каждый раз юзер не нажимал правый клик и не выбирал "запуск от ...", можно поставить галочку "запускать всегда от адм...". Нужно такое реализовать на PowerShell'e. Даже не знаю как подступить.
Заранее спасибо.
Нужно такое реализовать на PowerShell' »
запустить повершел от имени администратора или программы в нём от имени?
skeletor
17-01-2012, 20:17
Вопрос в том, что нужно сделать так, что бы на 200 компах эта прога начала нормально запускаться. Я выбрал вариант на powershell изменить свойства проги (поставить в ней соответствующую галочку) и всё. Вопрос не в том, как запустить от имени администратора, а вопрос в том, как установить это свойство некоторой программе через powershell.
Создайте манифест:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0"
processorArchitecture="x86"
name="YOURPROGNAME"
type="win32"/>
<description>Description of your application</description>
<!-- Identify the application security requirements. -->
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel
level="requireAdministrator"
uiAccess="false"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
И с помощью утилиты mt.exe интегрируйте в приложение:
mt.exe -nologo -manifest "myprogram.exe.manifest" -outputresource:"myprogram.exe;#1"
Дальше можете распространить exe.
Вариант попроще,используя реестр(но проще использовать GPP - создать заданный ключ и распространить на компьютеры):
#Для компьютера
Set-ItemProperty -Path "HKLM:\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" -Name "C:\program\omatic.exe" -Value "RUNASADMIN"
#Для конкретного пользователя
Set-ItemProperty -Path "HKCU:\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" -Name "C:\program\omatic.exe" -Value "RUNASADMIN"
PS. требует рестарт(возможно достаточно explorer).Но для более быстрого выполнения скрипта,можно использовать reg.exe в bat =)
Kazun, превосходно! Я всё пытался вспомнить, как этот параметр зовётся.
«mt.exe» — оно: Mt.exe (http://msdn.microsoft.com/en-us/library/windows/desktop/aa375649(v=vs.85).aspx)?
skeletor
18-01-2012, 12:33
Всем спасибо, особенно Kazun - работает.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.