Tema: Abrir cajon
Ver Mensaje Individual
  #17 (permalink)  
Antiguo 29/08/2008, 10:06
Makoynet
Usuario no validado
 
Fecha de Ingreso: marzo-2008
Ubicación: Morelia Mich. México
Mensajes: 37
Antigüedad: 17 años
Puntos: 0
Respuesta: Abrir cajon

Hola, yo estoy haciendo una aplicacion en la que mando a puerto paralelo estas secuancias de escape de impresora, el detalle es que ya que no he encontrado una manera de que VB se comunique directamente con el puerto paralelo "LPT", ni con puerto USB, asi que lo hago mediante una llamada de shell (consola de windows), esto porque lo hago como si fuera una instruccion directamente desde MS-DOS, te dejo el codigo y pruebalo, en realidad funciona y esto sin instalñar drivers de la impresora, solo la conectas por puerto LPT y listo, estas son las secuencias de escape: (Chr(&H1B) & "@"), intenta con tus secuencias

Código:
Private Sub imprimir()

        Dim file As System.IO.StreamWriter = System.IO.File.CreateText("C:\temp.txt")

        file.Write(Chr(&H1B) & "@")
        file.Write(Chr(&H1B) & "a" & Chr(1)) 'Centra Texto
        file.WriteLine("Texto Centrado")
        file.Write(Chr(&H1B) & "E") 'Bold
        file.WriteLine("Texto Bold")
        file.Write(Chr(&H1B) & "F") 'Elimina Bold
        file.Write(Chr(&H1B) & "a" & Chr(0)) ' Texto a la Izquierda
        file.WriteLine("Panama # 356 y Luis Urdaneta")
        file.WriteLine("TICKET No. :" & "ticket")
        file.Write("nada de nuevo")
        file.Write("nada de nuevo")
        file.WriteLine("nada de nuevo")
        file.Write(Chr(13))
        file.Write(Chr(&H1B) & Chr(&H67)) 'ESC g: Select 15-cpi

        file.WriteLine("Ingreso:" & Format(Now, "dddd, d MMM yyyy") & "/ " & TimeOfDay)

        file.WriteLine("------------------------------")

        file.Write(Chr(&H1B) & "!" & Chr(0)) 'ESC ! 0: Vuelve a lo normal

        file.WriteLine("Neto : USD$:" & "Net0")

        file.WriteLine("I.V.A: " & "IVA")
        file.Write(Chr(&H1B) & "g") 'ESC g: Select 15-cpi
        file.WriteLine("Total: USD$:" & "Total")

        file.WriteLine(Chr(&H1D) & "V" & Chr(0))

        'Drawer Kick (ESC p)

        'file.WriteLine(CHR(&H1B)& CHR(&H70)& CHR(&H0)& CHR(60)& CHR(120)

        file.Close()
        Try
            Shell("print /d:lpt1 C:\temp.txt", AppWinStyle.Hide)
        Catch ax As System.IO.FileNotFoundException
            MsgBox(ax.Message)
        End Try
    End Sub
de antemano te comunico que yo tampoco he logrado comunicarme directamente con el puerto USB, ni LPT, solo con el serial (COMn) en otros proyectos que he echo, lo que se es que si se puede hacer muy bien esta conexion y enviar valores por el puerto serial (COM1, COM2, ... COMn)