identificar grupos desde un scrip

21/07/2005 - 00:33 por Marcos | Informe spam
buenas tardes

tengo un controlador de dominio con dirctorio activo, en el cual tengon go
mi estructura de unidades organizativas y usuarios, a los culaes les les
mapeo unidades de red , devido a que son muchos grupos de usuarios tengo
muchos scrips de mapeo , se podria hacer un solo scrip diferencie los grupos
y les asigne segun el grupo las unidades a mapear.

Gracias de antemano
atte
mape

Preguntas similare

Leer las respuestas

#1 Guillermo Delprato [MS-MVP]
21/07/2005 - 14:36 | Informe spam
Adapta este script que te va servir

'='
' VBScript Source File -- Created with SAPIEN Technologies PrimalSCRIPT(TM)
'
' NAME: <filename>
'
' AUTHOR: Bryan Nyce , Home
' DATE : 4/10/2003
'
' COMMENT: <comment>
'
'=Option Explicit
On Error Resume Next

Dim oFSO, oWshNetwork, oGroupDict

'Map drives based on Group memberships
If IsMember("Group1") Then
MapDrive "S:", "\\Server\Share"
End If

If IsMember("Group2") Then
MapDrive "T:", "\\Server\Share1"
MapDrive "P:", "\\Server2\Share2"
End If

'Supporting function to enumerate group memberships
Function IsMember(sGroup)
Dim sAdsPath, oUser, oGroup

If IsEmpty(oGroupDict) Then
Set oGroupDict = CreateObject("Scripting.Dictionary")
oGroupDict.CompareMode = vbTextCompare

sAdsPath = oNet.UserDomain & "/" & oNet.UserName
Set oUser = GetObject("WinNT://" & sAdsPath & ",user")

For Each oGroup In oUser.Groups
oGroupDict.Add oGroup.Name, "-"
Next

Set oUser = Nothing
End If

IsMember = CBool(oGroupDict.Exists(sGroup))

End Function

'Supporting function to Map drives
'If drive letter is in use, attempts to remove connection.
'Returns True if drive mapped, False otherwise.
Function MapDrive(sDrive, sShare)
Dim oDrive

On Error Resume Next
Err.Clear

If oFSO.DriveExists(sDrive) Then
Set oDrive = oFSO.GetDrive(sDrive)
If Err.Number <> 0 Then
Err.Clear
MapDrive = False

Saludos

Guillermo Delprato
MVP-MCT-MCSE-MCSA-MCP
Buenos Aires, Argentina

NOTA. Por favor, las preguntas y comentarios en los grupos, así nos
beneficiamos todos. Este mensaje se proporciona "como está" sin
garantías de ninguna clase, y no otorga ningún derecho. Ud. asume los
riesgos This posting is provided "AS IS" with no warranties, and
confers no rights. You assume all risk for your use.



Marcos wrote:
buenas tardes

tengo un controlador de dominio con dirctorio activo, en el cual
tengon go mi estructura de unidades organizativas y usuarios, a los
culaes les les mapeo unidades de red , devido a que son muchos grupos
de usuarios tengo muchos scrips de mapeo , se podria hacer un solo
scrip diferencie los grupos y les asigne segun el grupo las unidades
a mapear.

Gracias de antemano
atte
Respuesta Responder a este mensaje
#2 Marcos
22/07/2005 - 01:07 | Informe spam
Hola Guillermo , Gracias por responderme

mira adapte el script para mis grupos u UO pero parece que los comandos no
son reconocidos por el sistema , por ejemplo

Si ejecuto la linea MapDrive "T:", "\\Server\Share1" desde el ejecutar
me sale el siguiente error "windows no puede encontrara el archivo MapDrive

pero si pruebo con la siguiente linea net use s: \\server\share1 si me mapea
la unidad de red ,(desde el ejecutar)

cambie el script con el NET USE pero aun asi no funciona , Al parecer la
sintaxis no es la correcta para el windows 2003 server

me podrias ayudar con eso

mape


"Guillermo Delprato [MS-MVP]" escribió:

Adapta este script que te va servir

'=> '
' VBScript Source File -- Created with SAPIEN Technologies PrimalSCRIPT(TM)
'
' NAME: <filename>
'
' AUTHOR: Bryan Nyce , Home
' DATE : 4/10/2003
'
' COMMENT: <comment>
'
'=> Option Explicit
On Error Resume Next

Dim oFSO, oWshNetwork, oGroupDict

'Map drives based on Group memberships
If IsMember("Group1") Then
MapDrive "S:", "\\Server\Share"
End If

If IsMember("Group2") Then
MapDrive "T:", "\\Server\Share1"
MapDrive "P:", "\\Server2\Share2"
End If

'Supporting function to enumerate group memberships
Function IsMember(sGroup)
Dim sAdsPath, oUser, oGroup

If IsEmpty(oGroupDict) Then
Set oGroupDict = CreateObject("Scripting.Dictionary")
oGroupDict.CompareMode = vbTextCompare

sAdsPath = oNet.UserDomain & "/" & oNet.UserName
Set oUser = GetObject("WinNT://" & sAdsPath & ",user")

For Each oGroup In oUser.Groups
oGroupDict.Add oGroup.Name, "-"
Next

Set oUser = Nothing
End If

IsMember = CBool(oGroupDict.Exists(sGroup))

End Function

'Supporting function to Map drives
'If drive letter is in use, attempts to remove connection.
'Returns True if drive mapped, False otherwise.
Function MapDrive(sDrive, sShare)
Dim oDrive

On Error Resume Next
Err.Clear

If oFSO.DriveExists(sDrive) Then
Set oDrive = oFSO.GetDrive(sDrive)
If Err.Number <> 0 Then
Err.Clear
MapDrive = False

Saludos

Guillermo Delprato
MVP-MCT-MCSE-MCSA-MCP
Buenos Aires, Argentina

NOTA. Por favor, las preguntas y comentarios en los grupos, así nos
beneficiamos todos. Este mensaje se proporciona "como está" sin
garantías de ninguna clase, y no otorga ningún derecho. Ud. asume los
riesgos This posting is provided "AS IS" with no warranties, and
confers no rights. You assume all risk for your use.



Marcos wrote:
> buenas tardes
>
> tengo un controlador de dominio con dirctorio activo, en el cual
> tengon go mi estructura de unidades organizativas y usuarios, a los
> culaes les les mapeo unidades de red , devido a que son muchos grupos
> de usuarios tengo muchos scrips de mapeo , se podria hacer un solo
> scrip diferencie los grupos y les asigne segun el grupo las unidades
> a mapear.
>
> Gracias de antemano
> atte



Respuesta Responder a este mensaje
#3 Guillermo Delprato [MS-MVP]
22/07/2005 - 15:06 | Informe spam
Es un VBScript. Guárdalo con extensión VBS (no como BAT)

Saludos

Guillermo Delprato
MVP-MCT-MCSE-MCSA-MCP
Buenos Aires, Argentina

NOTA. Por favor, las preguntas y comentarios en los grupos, así nos
beneficiamos todos. Este mensaje se proporciona "como está" sin
garantías de ninguna clase, y no otorga ningún derecho. Ud. asume los
riesgos This posting is provided "AS IS" with no warranties, and
confers no rights. You assume all risk for your use.



Marcos wrote:
Hola Guillermo , Gracias por responderme

mira adapte el script para mis grupos u UO pero parece que los
comandos no son reconocidos por el sistema , por ejemplo

Si ejecuto la linea MapDrive "T:", "\\Server\Share1" desde el
ejecutar me sale el siguiente error "windows no puede encontrara el
archivo MapDrive

pero si pruebo con la siguiente linea net use s: \\server\share1 si
me mapea la unidad de red ,(desde el ejecutar)

cambie el script con el NET USE pero aun asi no funciona , Al parecer
la sintaxis no es la correcta para el windows 2003 server

me podrias ayudar con eso


Adapta este script que te va servir

'=>> '
' VBScript Source File -- Created with SAPIEN Technologies
PrimalSCRIPT(TM) '
' NAME: <filename>
'
' AUTHOR: Bryan Nyce , Home
' DATE : 4/10/2003
'
' COMMENT: <comment>
'
'=>> Option Explicit
On Error Resume Next

Dim oFSO, oWshNetwork, oGroupDict

'Map drives based on Group memberships
If IsMember("Group1") Then
MapDrive "S:", "\\Server\Share"
End If

If IsMember("Group2") Then
MapDrive "T:", "\\Server\Share1"
MapDrive "P:", "\\Server2\Share2"
End If

'Supporting function to enumerate group memberships
Function IsMember(sGroup)
Dim sAdsPath, oUser, oGroup

If IsEmpty(oGroupDict) Then
Set oGroupDict = CreateObject("Scripting.Dictionary")
oGroupDict.CompareMode = vbTextCompare

sAdsPath = oNet.UserDomain & "/" & oNet.UserName
Set oUser = GetObject("WinNT://" & sAdsPath & ",user")

For Each oGroup In oUser.Groups
oGroupDict.Add oGroup.Name, "-"
Next

Set oUser = Nothing
End If

IsMember = CBool(oGroupDict.Exists(sGroup))

End Function

'Supporting function to Map drives
'If drive letter is in use, attempts to remove connection.
'Returns True if drive mapped, False otherwise.
Function MapDrive(sDrive, sShare)
Dim oDrive

On Error Resume Next
Err.Clear

If oFSO.DriveExists(sDrive) Then
Set oDrive = oFSO.GetDrive(sDrive)
If Err.Number <> 0 Then
Err.Clear
MapDrive = False

Saludos

Guillermo Delprato
MVP-MCT-MCSE-MCSA-MCP
Buenos Aires, Argentina

NOTA. Por favor, las preguntas y comentarios en los grupos, así nos
beneficiamos todos. Este mensaje se proporciona "como está" sin
garantías de ninguna clase, y no otorga ningún derecho. Ud. asume los
riesgos This posting is provided "AS IS" with no warranties, and
confers no rights. You assume all risk for your use.



Marcos wrote:
buenas tardes

tengo un controlador de dominio con dirctorio activo, en el cual
tengon go mi estructura de unidades organizativas y usuarios, a los
culaes les les mapeo unidades de red , devido a que son muchos
grupos de usuarios tengo muchos scrips de mapeo , se podria hacer
un solo scrip diferencie los grupos y les asigne segun el grupo las
unidades a mapear.

Gracias de antemano
atte
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida