Autor Tema: Cambiar impresora predeterminada  (Leído 2756 veces)

Desconectado xavi

  • Administrador
  • Habitual
  • *****
  • Mensajes: 219
Cambiar impresora predeterminada
« en: Octubre 10, 2012, 02:36:04 pm »
Palabras clave: cambio, impresora, predeteminada
Autor: Juan M. Afán de Ribera
Extraído de: La web del Búho

Objetivo:
Una rutina de Juan M. Afán de Ribera que muestra la facilidad de cómo através de un sencillo código WSH se puede cambiar la impresora predeterminada del sistema Windows.

Código: [Seleccionar]

'*********** Código ***************
'
' imprPredeterminada
'
' Función que intenta establecer la
' impresora predeterminada a la impre-
' sora que se le pase en su argumento
' nomImpresora.
'
' La función devolverá True en caso
' de éxito y False en caso contrario.
' En caso de que la impresora no exis-
' tiera y el código lo ejecutáramos
' utilizando VB o VBA se produciría el
' error -2147352567. Si utilizamos
' VBScript simplemente no haría nada.
'
' Autor: Juan M. Afán de Ribera
' Fecha: Junio 2003
'
Function imprPredeterminada( _
    nomImpresora As String) As Boolean
   
    Dim wshNetwork As Object 'WshNetwork

    Set wshNetwork = CreateObject("WScript.Network")
    On Error GoTo err_imprNoExiste
    wshNetwork.SetDefaultPrinter nomImpresora
    imprPredeterminada = True
   
exit_imprPredeterminada:

    Set wshNetwork = Nothing
    Exit Function
   
err_imprNoExiste:

    If Err.Number <> -2147352567 Then
        MsgBox "Error número: " & Err.Number & vbCrLf _
            & Err.Description
    End If
    GoTo exit_imprPredeterminada

End Function
'********** Fin código ************