Cambio impresora predeterminada basada en la localización
Pregunta
Me gustaría escribir un VBScript para cambiar la impresora predeterminada, en base al cual está conectada la impresora.
Tengo un ordenador portátil que utilizo en el trabajo y en casa, y me gustaría ejecutar este script al iniciar Windows para que la impresora por defecto es siempre la correcta.
Si hay otra manera de hacer esto en XP, soy todo oídos.
Solución
WMI puede adaptarse.
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& strComputer & "\root\cimv2")
Set colInstalledPrinters = objWMIService.ExecQuery _
("Select * from Win32_Printer Where Name = 'ScriptedPrinter'")
For Each objPrinter in colInstalledPrinters
If objPrinter.Name="SomePrinterName" Then
objPrinter.SetDefaultPrinter()
End If
Next
- http://msdn.microsoft. com / es-es / library / aa394598 (VS.85) .aspx
También puede encontrar el dominio y cosas semejantes:
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" _
& strComputer & "\root\cimv2")
Set colSettings = objWMIService.ExecQuery _
("Select * from Win32_ComputerSystem")
For Each objComputer in colSettings
Wscript.Echo "System Name: " & objComputer.Name
Wscript.Echo "Domain: " & objComputer.Domain
Next
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow