Problema con impresora desde c

Tengo un problema con imprimir texto desde un programa en C.
Según tengo entendido, simplemente tendría que poner, por ejemplo:
>fprintf(stdprn,"...texto...");
pero me da error de compilación:
error C2065: 'stdprn' : undeclared identifier
y los warnings:
'function' : 'struct _iobuf *' differs in levels of indirection from 'int '
'fprintf' : different types for formal and actual parameter 1
¿Cómo puedo solucionarlo?
Gracias de antemano a quien me ayude...

1 respuesta

Respuesta
1
¿En qué compilador estas haciendo tu programa? , bueno en c++ no te debería dar problemas. Como anteriormente ya han hecho, esto funciona para imprimir textos en c++ ¿por qué hacerlo en C? ¿Tarea?.
#include <iostream.h>
#include <fstream.h>
ofstream printer;
ostream_withassign screen;
void main()
{
printer.open("LPT1:");
cout = printer;
cout << "Texto que se imprimira" << endl;
}
Lo estoy haciendo en C, porque no piloto el C++.
Probé tu programa en C y me daba 9 errores, supongo que es porque era para c++.
En resumen, gracias, pero sigo igual...
Esta bien!!! si insistes, aprenderé Visual C++ 6.0....
Quizás puedas recomendarme alguna web o libro en el que vengan las analogías entre el C y el C++, y así enterarme de algo.
Gracias de nuevo.
Si, era para el C++, te doy otra opcion pero sigue siendo en c++ (en verdad es para VC++ 6.0) , ¿porq el C?
(Si vas ha hacerlo en C++ para Consola (DOS u otros) créale el main(), si lo haces para VC++ copia los encabezados en la clase principal donde los recurres y hereda en un objeto el evento correspondiente y pégalo)
void CPruebitDlg::OnButton1()
{
MessageBox("Se va a Imprimir en la Impresora");
MessageBox("¿Esta seguro que quiere imprimir?","Imprimiendo...");
ofstream Imprimir("PRN");
cout <<"Imprimiendo... ";
for(int Ijj=0;Ijj<24;Ijj++)
{
Imprimir << "LOTE 25 LOTE 25LOTE 25 LOTE 25LOTE 25 LOTE 25LOTE 25 LOTE 25" << endl
<< "1110603 11106031110603 11106031110603 11106031110603 1110603" << endl
<< "V-JUN04 V-JUN04V-JUN04 V-JUN04V-JUN04 V-JUN04V-JUN04 V-JUN04" << endl;
//Imprimir << setfill('. ') <<Setw(5) << 12 << setiosflags(ios::fixed)
// << Setiosflags(ios::showpoint) << setiosflags(ios::right)
// << Setprecision(2)<<setw(15) << 12.5
// << setw(15) << 12*100 << "%" << endl;
}
MessageBox("Se Imprimio todo");
}
void CPruebitDlg::OnButton3()
{
ofstream Imprimir("PRN");
MessageBox("Expulsar pagina");
Imprimir << "\f";
}
Bueno estas funciones lo puedes hacerlas para dos, solamente que no necesitas el operador de ámbito porque tienes que quitar el evento.
SI te asusta esto no te preocupes, el C cuando se ponde tedioso es Peorrrrr, ya me pasó :P, programa en c++ ;)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas