Войти

Показать полную графическую версию : [решено] Установить галочку "Запуск от адм" на приложении


skeletor
17-01-2012, 20:05
Есть много компов с Windows7 и нужно на них всех установить возможность запуска приложения как администратор. Что бы каждый раз юзер не нажимал правый клик и не выбирал "запуск от ...", можно поставить галочку "запускать всегда от адм...". Нужно такое реализовать на PowerShell'e. Даже не знаю как подступить.
Заранее спасибо.

exo
17-01-2012, 20:11
Нужно такое реализовать на PowerShell' »
запустить повершел от имени администратора или программы в нём от имени?

skeletor
17-01-2012, 20:17
Вопрос в том, что нужно сделать так, что бы на 200 компах эта прога начала нормально запускаться. Я выбрал вариант на powershell изменить свойства проги (поставить в ней соответствующую галочку) и всё. Вопрос не в том, как запустить от имени администратора, а вопрос в том, как установить это свойство некоторой программе через powershell.

Kazun
17-01-2012, 21:41
Создайте манифест:
<?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.

Kazun
17-01-2012, 21:59
Вариант попроще,используя реестр(но проще использовать 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 =)

Iska
17-01-2012, 23:11
Kazun, превосходно! Я всё пытался вспомнить, как этот параметр зовётся.

«mt.exe» — оно: Mt.exe (http://msdn.microsoft.com/en-us/library/windows/desktop/aa375649(v=vs.85).aspx)?

Kazun
17-01-2012, 23:12
Iska,оно.

skeletor
18-01-2012, 12:33
Всем спасибо, особенно Kazun - работает.




© OSzone.net 2001-2012