Resumen Cambiar la impresora predeterminada (VB 3)

Hola Matías !!!

Te envio este ejemplo en el cual se cambia el driver de una
impresora a un fax y luego vuelve a seleccionar la impresora
por default, creo que te servira igual para cambiar a otra
impresora, no lo he probado porque no tengo VB3, solo lo
copie de una revista, si tiene errores le hechas la culpa a
Edward Troxel que es el autor, si te funciona... ;-))

Saludos
jcollado@sistematica.com.ni
Managua, Nicaragua

Sub SetPrinters()
  Dim Buffer as string, r as integer, i as integer
  Dim pr as string, Buffer2 as string

  Buffer = Space(8192)
  r = GetProfileString("windows","device","", buffer,Len(buffer))
  r = Instr(buffer,chr(0))
  DefPrint = Left(buffer,r-1)

  r = GetProfileString("PrinterPorts",ByVal 0&,"",buffer,len(buffer))
  Do
    r = Instr(buffer,chr(0))
    If UCase(Left(buffer,3)) = "WIN" then
      pr = Left(buffer,r-1)
      buffer2 = Space(1024)
      i = GetProfileString( "PrinterPorts", pr, "",buffer2,Len(buffer2))
      i = InStr(buffer2,"," )
      i = InStr(i+1,buffer2,",")
      FaxPrint = pr & "," & Left(buffer2,i-1)
      Exit Do
    End If
    buffer = Mid(buffer,r+1)
  Loop While r > 0
End Sub

'Ahora que ya se conoce la impresora por default y
'el Fax driver lo unico que resta es cambiar a ese
'driver, para hacerlo sencillamente hay que cambiar
'el ini indicando el printer drive por default.
'Este codigo cambia el printer drive, imprime el
'reporte y vuelve al driver por default.

'Cambiar a fax
If fax Then
  DeviceLine = FaxPrint
  r = WriteProfileString("windows","Device",DeviceLine)
  outto = 1
End If

'Imprimir el reporte
DoEvents

'Volver a la impresora por default
If fax Then
  DeviceLine = DefPrint
  r = WrteProfileString("windows","Device",DeviceLine)
End If



----------
From:     Matiasbi[SMTP:matiasbi@mx3.redestb.es]
Sent:     Monday, October 13, 1997 03:26 PM
To:     vb-esp@ccc.uba.ar
Subject:     (VB-ESP) IMPRESORA PREDETERMINADA

Me sería de gran ayuda alguna forma de solucionar el problema que tengo en
Visual Basic 3.0
Tengo que poner como predeterminada una u otra impresora de las dos que
tengo, pero no sé como, alguien sabe cómo cambiar la impresora
predeterminada de windows.
Repito, todo esto debe ser para VISUAL BASIC 3.0    


                        Gracias, MATÍAS





Resumen Resumen

Visual Basic Página de Visual Basic

Página principal Página principal

www.jrubi.com