none
Запуск объявлений (Advirtizment) на клиенте через скрипт RRS feed

  • Общие обсуждения

  • Добрый день.

    На компьютере пользователя сделанны некоторые объявления и возникла необходимость в следующей задаче:

    запускать на локальном компьютере клиента объявления (Advertizment) не ручками, а через скрипт. Пользователь на компьютере не имет админских прав.

    Может есть у кого какие соображения т.к. я у же много перерыл и ничего путного не нашел. Сервер SCCM 2007

    • Изменен тип Vinokurov YuriyModerator 21 июля 2011 г. 9:33 давность и отсутствие активности в теме

Все ответы

  • А в чем проблема сделать Mandatory advertisement?
    Отвечающий
  • Смотрите у пользователя объявлен весь софт который есть, но этот софт ненадо ставить. Теперь в определенное время запускается скрипт который проверяет группы в домене и если этот пользователь находится в определенной группе, то скрипт запускает на выполнение опреденное объявление. Все это происходит на стороне клиента и с его правами(не администраторскими).
  • А само по себе программное обеспечение требует прав администратора? Создайте 2 коллекции-пустышки Mandatory Software Installation и Optional Software Installation, добавьте коллекции с именами названия программ. Назначьте программы на пользователя.

    Отвечающий
  • Назначьте программы на пользователя.

    Немножко уточню. Исходя из постановки задачи лучше в качестве члена коллекции указать необходимую доменную группу. Дополнительным удобством будет отсутствие необходимости предоставлять всем администраторам права для управления SCCM; они могут просто включить пользователя в нужную группу в домене и ему автоматом прилетит необходимая программа.
    6 июля 2011 г. 16:21
  • Так.....

    В компании более 1500-5000 компов, Домен 2003 и SCCM 2007

    SCCM необходим прежде всего для статистики, распространения софта

    Необходимо оперативно устанавливать софт, проверка 1 раз в час.

    В домене есть группы в которых находятся пользователи(не компы). на эти группы определенные пользователи (администраторы групп) имеют право добавлять пользователей. в SCCM "администраторы груп" не имеют доступа. и сейчас работает очень медленная схема:

    Группа в домене - по этой группе наполняется коллекция в SCCM - клиенты проверяют что на них объявлено и автоматически устанавливают софт(который запускается от имени администратора)

    Данная схема не подходит т.к. очень большие промежутки сканирования стоят(чтобы не положить сеть, сканирование домена 1 раз в сутки, обновление коллекции каждый час, обновление политики каждый час)

    Поэтому весь доступный софт объявляется на всех клиентов сразу, а потом когда это необходимо запускается на пользователях ручками. Для того чтобы пользователи не могли запускать объявления, стоит скрипт который проверяет группу в домене, если пользователь состоит в этой группе то установка запустится, если не находится в группе то софт не установится.

    Каждый час на пользователе запускается скрипт который проверяет определенные группы в домене и если пользователь находится в данной группе то скрипт запускает определенное объявление (например по его ID).

    Теперь осталось решить одну проблему: 

    как из скрипта на клиенте запустить нужное мне объявление

    может это будет командная строка или обращение через WMI, незнаю........

    11 июля 2011 г. 9:45
  • Возможно вам поможет это: http://scug.be/blogs/sccm/archive/2009/09/15/adding-wmic-right-click-actions-to-the-configmgr-2007-admin-console-1.aspx

    А для запуска определённого адвертизмена для примера посмотрите на утилиту из набора "SCCM Right Click Tools" (http://myitforum.com/cs2/blogs/rhouchins/archive/2008/04/09/sccm-right-click-tools.aspx) утилита для перезапуска Адвертизмента там называется c:\Program Files (x86)\Microsoft Configuration Manager Console\AdminUI\XmlStorage\Tools\Advert.hta


    Грамотная постановка вопроса - уже 50% решения. Не забывайте помечать ответы как полезные или как ответ, если они Вам помогли.
    12 июля 2011 г. 6:29
    Модератор
  • Можно воспользоваться 2-мя способами
    2-й вариант крайне просто использовать, для примера я запустил адвертизмент на локальном компьютере.
    В VBS не силён поэтому пример на PowerShell:
    # Создаём объект UIResourceMgrClass
    $a = New-Object -com UIResource.UIResourceMgr
    # Проверяем есть ли определённый адвертизмент
    $a.GetProgram("Per-system attended","001000A0")
    # Запускаеем адвертизмент
    $a.ExecuteProgram("Per-system attended","001000A0", 0)
    
    
    001000A0 - PackageID
    "Per-system attended" - programId

    Работает в случае если у адвертизмента - Assigned after: Never

    Грамотная постановка вопроса - уже 50% решения. Не забывайте помечать ответы как полезные или как ответ, если они Вам помогли.
    12 июля 2011 г. 9:34
    Модератор