INFORMACIÓN: Comprobar la conexión de impresora

Seleccione idioma Seleccione idioma
Id. de artículo: 77467 - Ver los productos a los que se aplica este artículo
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Expandir todo | Contraer todo

En esta página

Resumen

La función de servicios de impresora comprobar estado de impresora (INT 17 H función 2 H) de BIOS de ROM de PC puede utilizarse para determinar si una impresora está conectada a un puerto específico. Para ahorrar tiempo y pérdida de datos, una aplicación puede utilizar INT 17 H función 2 H para determinar si una impresora está presente antes de escribir la aplicación está imprimiendo código. En este artículo contiene código para realizar esta determinación.

Nota : esta misma funcionalidad puede obtenerse en Windows 3.1 con las funciones OpenComm() , WriteComm() y GetCommError() .

Código de ejemplo

El código siguiente define una función IsPrinter() :
   /***************************************************************

   *                                                             *
   *  Name:     IsPrinter - tests if printer is connected        *
   *                                                             *
   *  Parameters:   AX = 02h                                     *
   *                DX = printer number (LPT1 = 0)               *
   *                                                             *
   *  Return    AH = status bits                                 *
   *                 01h    time out                             *
   *                 02h    unused                               *
   *                 04h    unused                               *
   *                 08h    I/O error                            *
   *                 10h    printer selected                     *
   *                 20h    out of paper                         *
   *                 40h    printer acknowledgment               *
   *                 80h    printer not busy                     *
   *                                                             *
   * Function returns 1 if printer connected                     *
   *          returns 0 otherwise                                *
   *                                                             *
   ***************************************************************/ 

   int IsPrinter(void)

   {

   unsigned char iRetVal = 0;

   _asm

   {
      mov   ah, 02h
      mov   dx, 0            /* 0 is number for LPT1: */ 
      int   17h
      mov   iRetVal, ah
   }

   if (iRetVal == 0x90)

   return (1);

   else

      return (0);

   }
				
para obtener más información, consulte "Enciclopedia de MS-DOS el" (Microsoft Press). Páginas 163 y 164 contienen un ejemplo de interrupción controlada por la comunicación con la impresora. O apéndice detalla las funciones del BIOS ROM y sus parámetros.

Propiedades

Id. de artículo: 77467 - Última revisión: martes, 11 de febrero de 2014 - Versión: 1.1
La información de este artículo se refiere a:
  • Microsoft Windows Software Development Kit 3.1
Palabras clave: 
kbnosurvey kbarchive kbmt kb16bitonly kbinfo KB77467 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 77467

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com