![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » VBS/WSH/JS - Скрипт входа для пользователей домена |
|
VBS/WSH/JS - Скрипт входа для пользователей домена
|
Новый участник Сообщения: 3 |
Доброго времени суток. Столкнулся с задачей на VBS: нужно написать скрипт который запускает программу в зависимости от принадлежности пользователя к доменной группе. Есть 3 юзера (User1, User2, User3) и 2 группы (Group1, Group2). User1 состоит в Group1, User2 в Group2, а User3 и в Group1 и в Group2. В итоге при входе Userу1 открывается одна программа, Userу2 другая, а Userу3 выбор из этих 2 программ, т.к. состоит в 2ух группах. Как реализовать сию задачу? У меня получилось 3 разных файла, но как сделать так чтобы скрипт проверял юзера на принадлежность незнаю. Помогите, прошу.
Для User1 With CreateObject(“WScript.Shell”) .Run “mspaint.exe” End With Для User2 With CreateObject(“WScript.Shell”) .Run “notepad.exe” End With Для User3 Dim msg With CreateObject(“WScript.Shell”) msg = MsgBox(“Да – запустить Блокнот” & vbCrLf & _ “Нет – запустить Paint”, _ vbYesNo, “Выбор программы”) Select Case msg Case vbYes .Run “notepad.exe” Case vbNo .Run “mspaint.exe” End Select End With |
|
Отправлено: 09:19, 27-12-2019 |
fascinating rhythm Сообщения: 6705
|
Профиль | Отправить PM | Цитировать Это реализуется фильтром безопасности в GPO безо всяких скриптов.
|
------- Отправлено: 10:46, 27-12-2019 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Знаю, но суть задачи именно в написании скрипта
|
Отправлено: 11:22, 27-12-2019 | #3 |
Новый участник Сообщения: 3
|
Профиль | Отправить PM | Цитировать Не могу понять почему он не работает
Function GpRunObject(strGpName) Set RunObj = wscript.createobject("wscript.shell") 'запуск текстового CMD RubObj.run ("notepad.bat") wscript.Quit End Function Set WshShell = WScript.CreateObject("WScript.Shell") Set WshNetwork = WScript.CreateObject("WScript.Network") UserDomain = WshNetwork.UserDomain Set UserObj = GetObject("WinNT://" & UserDomain & "/" & WshNetwork.UserName) For Each GroupObj in UserObj.Groups If GroupObj.Name = "Первый отдел" Then Dim Msg, Style, Title, Response, MyString Dim WSHShell Msg = "Готовы поработать?" Style = vbYesNo + vbQuestion + vbDefaultButton2 Title = "Добрый день" Response = MsgBox(Msg, Style, Title) if Response = vbYes Then MyString = "Да" Set WSHShell = WScript.CreateObject("WScript.Shell") WSHShell.Run "notepad.bat", 0, false Else MyString = "Нет" End if End if If GroupObj.Name = "Второй отдел" Then Msg = "Готовы поработать?" Style = vbYesNo + vbQuestion + vbDefaultButton2 Title = "Добрый день" Response = MsgBox(Msg, Style, Title) If Response = vbYes Then MyString = "Да" Set WSHShell = WScript.CreateObject("WScript.Shell") WSHShell.Run "paint.bat", 0, false Else MyString = "Нет" End if end if Next |
Отправлено: 12:44, 27-12-2019 | #4 |
![]() Ветеран Сообщения: 2798
|
Профиль | Отправить PM | Цитировать Цитата Ybik1810:
Вот на powershell например: if ($env:USERNAME -in @((Get-LocalGroupMember -Group "group1").Name.Split('\')[1])) { Write-Output "user in group1, run program1" Start-Process -FilePath "cmd.exe" } elseif (($env:USERNAME -in @((Get-LocalGroupMember -Group "group2").Name.Split('\')[1]))) { Write-Output "user in group2, run program1" Start-Process -FilePath "cmd.exe" } |
||
Отправлено: 20:23, 27-12-2019 | #5 |
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
VBS/WSH/JS - Сценарий входа в систему для группы пользователей AD | AntiKvazaR | Скриптовые языки администрирования Windows | 10 | 06-04-2016 11:00 | |
V. 2010 - Скрипт сканирования учеток пользователей доверенного домена и создание контактов | sea707 | Microsoft Exchange Server | 2 | 24-07-2013 08:11 | |
[решено] Не стартует Logon скрипт от пользователей домена. | assker | Microsoft Windows NT/2000/2003 | 3 | 22-07-2009 15:00 | |
Изменения типа окна входа в систему для членов домена | Savrik | Microsoft Windows NT/2000/2003 | 3 | 18-02-2008 13:46 | |
как вывести время входа пользователей домена ? | Alexir | Microsoft Windows NT/2000/2003 | 3 | 01-02-2008 16:57 |
|