Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » vbs logon скрипт для подключения сетевых дисков

Модерирует : lynx, Crash_Master, dg, emx, ShriEkeR

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7

Открыть новую тему     Написать ответ в эту тему

SergeyCVS



winextreme team
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sVx
ок, гляну
 
Добавлено:
sVx
 
смотрим, MapDrivesInGroup.vbs, v1.1 добавил возможность именование сетевых дисков в проводнике

----------
xxx: если цыплят зовут - цыпа, цыпа, цыпа
xxx: а утят - утя, утя, утя..
xxx: то пингвинов надо подзывать - пинг, пинг, пинг

Всего записей: 2445 | Зарегистр. 04-01-2002 | Отправлено: 11:20 25-01-2006 | Исправлено: SergeyCVS, 23:16 28-01-2006
sVx



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо.
Работает (но только под Windows XP и Windows 2003,
на Windows 2000 не периеменовывает сетевой диск в проводнике)

Всего записей: 157 | Зарегистр. 17-06-2004 | Отправлено: 10:24 27-01-2006
SergeyCVS



winextreme team
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sVx

Цитата:
на Windows 2000 не периеменовывает  сетевой диск в проводнике

я неуверен что эта фича вааще под Win2k должна работать

----------
xxx: если цыплят зовут - цыпа, цыпа, цыпа
xxx: а утят - утя, утя, утя..
xxx: то пингвинов надо подзывать - пинг, пинг, пинг

Всего записей: 2445 | Зарегистр. 04-01-2002 | Отправлено: 13:58 27-01-2006
sVx



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
так работает.

Код:
mDrive = "W:\"  
Set oShell = CreateObject("Shell.Application")  
oShell.NameSpace(mDrive).Self.Name = "Base"


Всего записей: 157 | Зарегистр. 17-06-2004 | Отправлено: 19:00 28-01-2006
SergeyCVS



winextreme team
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sVx
у меня, к сожелению, вин2к нет под рукой, проверить не начем. у тя на вин2к версия wsh  какая (cscript /?)?

----------
xxx: если цыплят зовут - цыпа, цыпа, цыпа
xxx: а утят - утя, утя, утя..
xxx: то пингвинов надо подзывать - пинг, пинг, пинг

Всего записей: 2445 | Зарегистр. 04-01-2002 | Отправлено: 23:20 28-01-2006
sVx



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Название ОС    Microsoft Windows 2000 Professional
Версия             5.0.2195 Service Pack 4 сборка 2195
 
Сервер сценариев Windows (Microsoft R) версия 5.6

Всего записей: 157 | Зарегистр. 17-06-2004 | Отправлено: 07:04 30-01-2006
SergeyCVS



winextreme team
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sVx
попробуй такой вар-т у себя на вин2к, он без "\" в первой строке. имхо, эт без разницы, но других идей пока у меня нет

Код:
mDrive = "W:"
Set oShell = CreateObject("Shell.Application")
oShell.NameSpace(mDrive).Self.Name = "Base"


----------
xxx: если цыплят зовут - цыпа, цыпа, цыпа
xxx: а утят - утя, утя, утя..
xxx: то пингвинов надо подзывать - пинг, пинг, пинг

Всего записей: 2445 | Зарегистр. 04-01-2002 | Отправлено: 10:53 30-01-2006 | Исправлено: SergeyCVS, 10:54 30-01-2006
sVx



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
без "\" в вин2к тоже не работает.
буду запускать mDrive = "W:\" отдельным скриптом на вин2к.
Спасибо за помощь.

Всего записей: 157 | Зарегистр. 17-06-2004 | Отправлено: 12:36 30-01-2006
SergeyCVS



winextreme team
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sVx
так ты попробуй мой скрипт исправить, вызывая фун. MapDrv указывай литеру диска с "\" т.е.

Код:
MapDrv "W:\", FileSrv1 & "\Work","Проекты"


----------
xxx: если цыплят зовут - цыпа, цыпа, цыпа
xxx: а утят - утя, утя, утя..
xxx: то пингвинов надо подзывать - пинг, пинг, пинг

Всего записей: 2445 | Зарегистр. 04-01-2002 | Отправлено: 11:23 31-01-2006 | Исправлено: SergeyCVS, 11:24 31-01-2006
sVx



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SergeyCVS

Код:
MapDrv "W:\", FileSrv1 & "\Work","Проекты"

так диск не подключает но переименовывает (в том числе и на вин2к)

Код:
MapDrv "W:", FileSrv1 & "\Work"
MapDrv "W:\", FileSrv1 & "\Work","Проекты"

Подключает и Переименовывает
Большое спасибо.

Всего записей: 157 | Зарегистр. 17-06-2004 | Отправлено: 15:26 02-02-2006 | Исправлено: sVx, 15:27 02-02-2006
finder

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
sVx  
ок, гляну  
 
Добавлено:  
sVx  
 
смотрим, MapDrivesInGroup.vbs, v1.1  добавил возможность именование сетевых дисков в проводнике

 
Подскажите пожалуйста как будет выглядеть данный скрипт с проверкой групп в домене, например domainex.com? Я как понимаю, нужно заменить:
 
Function InGroup(strGroup)    
        InGroup=False    
        If InStr(UserGroups,"[CN=" & strGroup & "]") Then    
                InGroup=True    
        End If    
End Function

Всего записей: 63 | Зарегистр. 01-11-2003 | Отправлено: 17:33 03-04-2006
SergeyCVS



winextreme team
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
finder
править ни чего не надо, у данного скрипта нет жесткой привязки к домену

----------
xxx: если цыплят зовут - цыпа, цыпа, цыпа
xxx: а утят - утя, утя, утя..
xxx: то пингвинов надо подзывать - пинг, пинг, пинг

Всего записей: 2445 | Зарегистр. 04-01-2002 | Отправлено: 19:00 03-04-2006
Reznikoff

Junior Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Проблема с переименованием сетевых дисков в вин2000.
Как я понял чтобы их там переименовать надо всего лишь писать не

Код:
 
oShell.NameSpace(DrvLet).Self.Name = DrvName  
 

а

Код:
 
oShell.NameSpace(DrvLet & "\").Self.Name = DrvName  
 

Т.е. в качестве буквы надо передавать "W:\" а не "W:" (хотя последнее прокатывает в винхр)
Верно?

Всего записей: 62 | Зарегистр. 18-07-2005 | Отправлено: 00:54 04-04-2006
finder

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
finder  
править ни чего не надо, у данного скрипта нет жесткой привязки к домену

 
Проблема: не выполнялосль условие поиска пользователей в группе Domain Users если пользователь входит ещё в одну группу, например grex. OC Windows 2003 SP1 Eng Ent
 
Заметил следующее: Когда меняю в свойствах пользователя Set Primary Group на grex, то в скрипте срабатывает поиск по Domain Users.  
Иначе условие определения группы не выполняется:
if InGroup("Domain Users") then    
        MapDrv "N:", FileSrv1 & "\Doc","Docex"  
end if    
 

Всего записей: 63 | Зарегистр. 01-11-2003 | Отправлено: 13:51 04-04-2006
Master_Alex



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
К этому скрипту ещё бы принтера добавить - чтоб полнее скрипт был.

Всего записей: 525 | Зарегистр. 11-09-2003 | Отправлено: 15:23 04-04-2006
Etalon

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SergeyCVS Функцию InGroup

Код:
Function InGroup(strGroup)    
        InGroup=False    
        If InStr(UserGroups,"[" & strGroup & "]") Then    
                InGroup=True    
        End If    
End Function

можно заиписать проще

Код:
Function InGroup(strGroup)    
        InGroup = InStr(UserGroups,"[" & strGroup & "]")
End Function

Всего записей: 306 | Зарегистр. 03-02-2006 | Отправлено: 12:05 11-04-2006
Etalon

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Master_Alex Можно использовать вот такой сценарий, только перед использованием необходимо:
с помощью оснастки "Пользователи и компьютеры", для всех компьтеров установить атрибут "Размещение", в свойствах компьютеров.
Например, "Отдел №1", "Отдел №2", "Отдел №3", "Отдел №4"  

Код:
 
' VB Script Document
option explicit
 
Dim WshNetwork, SysInfo, ComputerDN, Computer, Printers, i, Location
 
Set WshNetwork = WScript.CreateObject("WScript.Network")
Set SysInfo = CreateObject("ADSystemInfo")
 
ComputerDN = SysInfo.ComputerName
Set Computer = GetObject("LDAP://" & ComputerDN)
Set Printers = WshNetwork.EnumPrinterConnections
 
For i = 0 to Printers.Count - 1 Step 2
    If Printers.Item(i) = "LPT3" then
       WshNetwork.RemovePrinterConnection Printers.Item(i), true  
    End If
Next
 
Location = Computer.Get("Location")
 
  Select Case Location
    Case "Отдел №1"
        WshNetwork.AddPrinterConnection "LPT3", "\\Server\Printer01"
        WshNetwork.AddWindowsPrinterConnection "\\Server\Printer01"
        WshNetwork.SetDefaultPrinter "\\Server\Printer01"
    Case "Отдел  №2"
        WshNetwork.AddPrinterConnection "LPT3", "\\Server\Printer02"
        WshNetwork.AddWindowsPrinterConnection "\\Server\Printer02"
        WshNetwork.SetDefaultPrinter "\\Server\Printer02"
    Case "Отдел №3"
        WshNetwork.AddPrinterConnection "LPT3", "\\Server\Printer03"
        WshNetwork.AddWindowsPrinterConnection "\\Server\Printer03"
        WshNetwork.SetDefaultPrinter "\\Server\Printer03"
    Case "Отдел №4"
        WshNetwork.AddPrinterConnection "LPT3", "\\Server\Printer04"
        WshNetwork.AddWindowsPrinterConnection "\\Server\Printer04"
        WshNetwork.SetDefaultPrinter "\\Server\Printer04"
  End Select
 

У меня другая беда. При подключении сценария, иногда проходит до пяти минут прежде чем произойдёт подключение дисков. И это не зависит ни от пользователя, ни от компьютера. Ни когда не знаешь при какой регистрации произойдёт эта задержка. Один раз пользователь регистрируется нормально, а в другой - сидит и ждёт когда сетевые диски появятся.

Всего записей: 306 | Зарегистр. 03-02-2006 | Отправлено: 08:38 13-04-2006 | Исправлено: Etalon, 09:03 13-04-2006
Master_Alex



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Etalon
Спасибо, я с принтерами vbs свою юзаю, про принтеры для SergeyCVS я как вариант сказал - народу пригодицца, а идея с Location мне понравилась, вот тут подумал мож в схему расширить и для принтеров вообще свой атрибут добавить
По поводу подключения сценариев - думаю стоит тебе завести отдельную тему. На вскидку - проблема с доменом/сервер загружен/стоит синхронное выполнение сценариев в GPO - адм. шаблоны - система - сценарии

Всего записей: 525 | Зарегистр. 11-09-2003 | Отправлено: 11:39 13-04-2006 | Исправлено: Master_Alex, 11:42 13-04-2006
Etalon

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У принтеров уже есть такой атрибут.
Просто у меня принтеров мало и вроде как проще их просто перечислить, чем Location'ы сравнивать

Всего записей: 306 | Зарегистр. 03-02-2006 | Отправлено: 13:41 13-04-2006
Seeth



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Тема как раз в точку! Большое всем спасибо!
Есть еще один маленький вопросик: как мапить сетевые диски не только в соответствии с группой пользователя, но и в зависимости от его имени входа в систему. Мне нужно в некоторых случаях мапить по группе, а в некоторых по имени входа пользователя в систему. Как это можно реализовать в данном скрипте? Может кусок кода подскажете, или функцию нужную?
 
Заранее благодарен.

Всего записей: 5 | Зарегистр. 21-04-2006 | Отправлено: 17:33 21-04-2006
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7

Компьютерный форум Ru.Board » Компьютеры » В помощь системному администратору » vbs logon скрипт для подключения сетевых дисков


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru