Tema destacado: Personaliza-Escoge el diseño del foro que más te guste.
Autor
|
Tema: Mapeo de impresoras en red por usuarioa (Leído 4,443 veces)
|
efer27
Desconectado
Mensajes: 24
|
Hola a todos,
0,0 si eh creado el grupo y asocie los usuarios a la impresora y no pasa nada ejecuta normal pero el problema no lo resuelvo.
bueno en verdad no se que pasa, por eso preguntaba para evitar manipular el active directory no seria mas facil crear un array para que lea desde un CSV y TXT, es una pregunta no se si sea factible.
Saludos
|
|
|
|
|
En línea
|
|
|
|
efer27
Desconectado
Mensajes: 24
|
Holaa todos, revisando el programa me encuentro con un error en esta instrucción. no se que pasa que en el mensaje me sale el print count 2 alguien sabe el motivo ? Public Sub EliminarPRN(pobjNetwork) Dim objPrinter 'Creación objeto prn red Set objPrinter = pobjNetwork.EnumPrinterConnections 'Comprueba si hay alguna impresora asignada MsgBox objPrinter.Count If objPrinter.Count > 0 Then 'The Printer array is Printer name, printer path that is why it is step 2 for i=1 to objPrinter.Count Step 2 'Comprueba si es una impresora de red if instr(objPrinter.Item(i),"\\") <> 0 Then pobjNetwork.RemovePrinterConnection objPrinter.Item(i),true,true MsgBox objPrinter.Item(1) & "-" & objPrinter.Item(2) & " Error:" & Error End if next end if End Sub
|
|
|
|
« Última modificación: 27 Abril 2011, 17:17 por Novlucker »
|
En línea
|
|
|
|
Novlucker
Ninja y
Moderador
 
Desconectado
Mensajes: 10.239
Yo que tu lo pienso dos veces
|
Si, que el código que pones es para Visual Basic (VB6) y no Visual Basic Script (vbs)
Saludos
|
|
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD http://twitter.com/novlucker "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
efer27
Desconectado
Mensajes: 24
|
Dejando solo el FOR al termino de la sentencia me sale igual
|
|
|
|
|
En línea
|
|
|
|
efer27
Desconectado
Mensajes: 24
|
Hola,
Ahora me sale este mensaje al remover las impresoras
erro linea 31 columna 13 source: objNetwork.RemovePrinterConnection
saludos
|
|
|
|
|
En línea
|
|
|
|
Novlucker
Ninja y
Moderador
 
Desconectado
Mensajes: 10.239
Yo que tu lo pienso dos veces
|
Ahora de que script estamos hablando?
Saludos
|
|
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD http://twitter.com/novlucker "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
efer27
Desconectado
Mensajes: 24
|
Hola,
El script es el que enviastes enmensajes anteriores sale el error cuando quiere eliminar.
If objPrinter.Count > 0 Then 'The Printer array is Printer name, printer path that is why it is step 2 for i=1 to objPrinter.Count Step 2 'test to make sure it is a network printer if instr(objPrinter.Item(i),"\\") <> 0 then ==> objNetwork.RemovePrinterConnection objPrinter.Item(i),true,true end if next end if
|
|
|
|
|
En línea
|
|
|
|
Novlucker
Ninja y
Moderador
 
Desconectado
Mensajes: 10.239
Yo que tu lo pienso dos veces
|
ok, ¿que tipo de error da? en el mensaje debe de tener una descripción.
Saludos
|
|
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD http://twitter.com/novlucker "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
efer27
Desconectado
Mensajes: 24
|
hola sale este mensaje
erro linea 31 columna 13 source: objNetwork.RemovePrinterConnection
no puede quitar las impresoras de red mapeadas
|
|
|
|
|
En línea
|
|
|
|
Novlucker
Ninja y
Moderador
 
Desconectado
Mensajes: 10.239
Yo que tu lo pienso dos veces
|
Ahí lo tienes claramente, probablemente sea problema de permisos.
Saludos
|
|
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD http://twitter.com/novlucker "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
efer27
Desconectado
Mensajes: 24
|
Hola,
ya revise los permisos y estan correcto pero no logro que el error no salga, no me elimina las impresoras que tengo mapeadas para luego agregarlas, ufff debe ser algo tonto pero no lo veo aun.
saludos
|
|
|
|
|
En línea
|
|
|
|
Novlucker
Ninja y
Moderador
 
Desconectado
Mensajes: 10.239
Yo que tu lo pienso dos veces
|
Por si acaso abre una consola con permisos de administrador, y desde ahí ejecuta el script.
Saludos
|
|
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD http://twitter.com/novlucker "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
efer27
Desconectado
Mensajes: 24
|
Hola, si lo ejecute con permisos pero el error continua lo que hice fue lo siguiente.
Eliminar impresoras de RED strComputer = "." Set WshNetwork = WScript.CreateObject("WScript.Network") Set objShell = CreateObject("Wscript.Shell") Set objWMIService = GetObject("winmgmts:" _ & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2") Set colInstalledPrinters = objWMIService.ExecQuery _ ("Select * from Win32_Printer") For Each objPrinter in colInstalledPrinters if InStr(objPrinter.Name, "\\")> 0 then WshNetwork.RemovePrinterConnection objPrinter.Name end if Next
Ahora me falta agregarlas.
eh estado probando que leea desde un archivo plano pero no puedo lograrlo es decir tengo el siguiente txt.
ouprueba1 \\server\printer ouprueba2 \\server\printer ouprueba3 \\server\printer
quiero que leea este archivo y lo compare con las ou que tengo en el active directory si pertenece el ou comparando con el txt que agregue la impresora.
a ver si me puedes ayudar yo sigo probando y te comento mis avances.
saludos
|
|
|
|
|
En línea
|
|
|
|
efer27
Desconectado
Mensajes: 24
|
Hola,
eh estado revisando y es lo que tengo hasta el momento en algo me equivoco al momento de conectar
Elimina correctamente, hace el array pero no puedo agregarlo a ver si alguien me ayuda.
Gracias por la pasciencia.
-------------------------------------------------------------------------
'Set global script objects and variables Set wshShell = WScript.CreateObject("WScript.Shell") Set wshNetwork = WScript.CreateObject("WScript.Network") Set wshObj = WScript.CreateObject("Scripting.FileSystemObject")
'Variables strNetworkPath = "C:\Copia de impresoras1.txt"
'-----------------------------------------------------------------------------' Eliminar impresora
'On Error Resume Next
Call DisconnectNetworkPrinters() MsgBox "Ejecuta asignar prn" Call ConnectPrinters(strNetworkPath, wshNetwork.computername)
Sub DisconnectNetworkPrinters() Set arPrinters = wshNetwork.EnumPrinterConnections
For i = 0 to (arPrinters.Count - 1) Step 2 If (Left(arPrinters.Item(i + 1), 2) = "\\") Then wshNetwork.RemovePrinterConnection arPrinters.Item(i + 1) End If Next End Sub
'--------------------------------------------------------------------------------' Conectar impresoras
Sub ConnectPrinters(strListFile, strCompname) Dim arrLinParts() Dim strCadTratar Set ListFile = wshObj.OpenTextFile(strListFile, 1) Do While ListFile.AtEndOfStream <> True strCadTratar = ListFile.ReadLine arrLineParts = Split(strCadTratar, Space(1)) MsgBox strCompname & " " & strCadTratar If UCase(strCompname) = UCase(arrLineParts(0)) Then For i = 0 To UBound(arrLineParts) If arrLineParts(i) <> "" Then wshNetwork.AddWindowsPrinterConnection UCase(arrLineParts(i)) End If Next If arrLineParts(1) <> "" Then wshNetwork.SetDefaultPrinter UCase(arrLineParts(1)) End If End If Loop ListFile.Close End Sub
|
|
|
|
|
En línea
|
|
|
|
efer27
Desconectado
Mensajes: 24
|
Hola,
Alguien me puede ayudar ??
|
|
|
|
|
En línea
|
|
|
|
|
|