Hola a todos,
Tengo una duda, como puedo enviar caracteres a la impresora desde mi aplicacion en Turbo C++.
Cualquier consejo se lo agradeceria mucho.
Saludos desde Mexico.
| |||
Imprimir desde una aplicacion en C Hola a todos, Tengo una duda, como puedo enviar caracteres a la impresora desde mi aplicacion en Turbo C++. Cualquier consejo se lo agradeceria mucho. Saludos desde Mexico. |
| |||
Puedes tener mayor control con la función Biosprint que trabaja me parece mucho con la interrupción 14 (o es la serial? jejeje no me acuerdo bien). Bueno, escribe el nombre y pide la ayuda del turboC o el que tengas. Te escribo algunas líneas que te ahorrarán tiempo, son mias asi que no las encontrarás en internet. void C_cancel(void) { biosprint(0,0x1b,0); biosprint(0,0x18,0); } void C_ancha(int inic) { if(inic) { biosprint(0,0x1b,0); biosprint(0,0x0e,0); } else { biosprint(0,0x1b,0); biosprint(0,0x14,0); } } void C_condens(int inic) { if(inic) { biosprint(0,0x1b,0); biosprint(0,0x0f,0); } else { biosprint(0,0x1b,0); biosprint(0,0x12,0); } } void C_pagina(void) { biosprint(0,0x1b,0); biosprint(0,0x0c,0); } void C_tab(void) { biosprint(0,0x1b,0); biosprint(0,0x09,0); } void C_timbre(void) { biosprint(0,0x1b,0); biosprint(0,0x07,0); } void C_espaciolinea(void) { biosprint(0,0x1b,0); biosprint(0,'3',0); biosprint(0,0x18,0); } void C_tampon(void) { biosprint(0,0x1b,0); biosprint(0,0x0a,0); } void C_tabvert(void) { biosprint(0,0x1b,0); biosprint(0,0x0b,0); } void imprime_hard(char bufferim[],int x,int y) { unsigned i,l; delay(25); switch(biosprint(2,0,0)) // Analizar todas las posibilidades { case 0x01: avisoprint("PASO DEL TIEMPO ADJUDICADO"); break; case 0x08: avisoprint("ERROR DE IMPRESORA"); break; case 0x10: avisoprint("LA IMPRESORA NO ESTA CONECTADA"); break; case 0x20: avisoprint("NO TIENE PAPEL O ESTA DESCONECTADA"); break; case 0x40: avisoprint("ACUSE DE RECIBO"); break; case 0x80: avisoprint("LA IMPRESORA NO ESTA PREPARADA"); break; case 0x90: break; } l=strlen(bufferim); biosprint(0,0x1b,0); biosprint(0,0,0); for(i=0;i<l;i++) { delay(15); //necesario, de lo contrario escribe caracteres intermedios switch(prueba_impresora()) { case 0: biosprint(0,bufferim[i],0); break; case 1: return; case 2: avisoprint("IMPRESION CANCELADA"); return; } } //prueba_impresora(); biosprint(0,0x0d,0); biosprint(0,0x0a,0); prueba_impresora(); } Espero te sirvan amigo :-] |
| |||
Hola gracias por sus respuestas, finalmente lo realize como escribir en un archivo siguiendo la filosofia de C de que todo son archivos, FILE *stdprn; stdprn = fopen("PRN","wb"); fprintf(stdprn,"From Windows: Test test test\f"); fclose(stdprn); Saludos, Farid A. Bielma Lopez http://farid-darkground.iespana.es |