RE:verificacion de impresora matriz de punto
Espero que este codigo te sirva:
----------------------------------------------
¿Cómo detectar el estado de un impresora local?.
Aplicable a Microsoft Visual Basic 6
Las funciones de la API de Windows para comprobar el estado de una impresora requieren que haya un documento en el spooler. Esta restricción obliga, en la mayoría de los casos, a mandar un trabajo de impresión para detectar el estado de la impresora. Para evitar este incoveniente se puede abrir el puerto de la impresora (normalmente lpt1) con CreateFile y tratarlo como un puerto de comunicaciones normal. La API ClearCommError permite detectar errores en el puerto.
El siguiente ejemplo muestra cómo examinar el estado de una impresora (este método sólo funciona para impresoras locales) :
Crea un nuevo proyecto.
Añade un módulo de proyecto.
Copia el siguiente código en el módulo de proyecto:
Public Const GENERIC_WRITE = &H40000000
Public Const GENERIC_READ = &H80000000
Public Const FILE_ATTRIBUTE_NORMAL = &H80
Public Const CREATE_ALWAYS = 2
Public Const OPEN_ALWAYS = 4
Public Const INVALID_HANDLE_VALUE = -1
Public Type COMSTAT
Filler1 As Long
Filler2 As Long
Filler3 As Long
Filler4 As Long
Filler5 As Long
Filler6 As Long
Filler7 As Long
Filler8 As Long
Filler9 As Long
Filler10 As Long
End Type
Declare Function CreateFile Lib "kernel32" _
Alias "CreateFileA" (ByVal lpFileName As String, _
ByVal dwDesiredAccess As Long, ByVal dwShareMode As Long, _
ByVal lpSecurityAttributes As Long, _
ByVal dwCreationDisposition As Lon