[ Fidelito_Castro @ 10.05.2008. 17:34 ] @
| Zamolio bih vas za pomoc.Ovaj deo koda nece da odstampa fajl, koji se prethodno ucita, na stampacu (ni u XP-u ni u Visti)?
Unapred zahvalan!
Code:
//Stampanje sadrzaja fajla na stampacu
#include <iostream>
#include <fstream>
#include <cstdlib>
#include <windows.h>
using namespace std;
//funkcija main
int main()
{
char ime_fajla[81];
char ch;
cout<<"Unesite putanju izvornog fajla> ";
cin.getline(ime_fajla, 81);
ifstream izvorni_fajl(ime_fajla, ios::in);
//U slucaju neuspesnog otvaranja
if(!izvorni_fajl)
{
cerr<<endl;
cerr<<"Error neuspesno otvaranje fajla "<<izvorni_fajl<<endl;
Sleep(1500);
exit(1);
}
ofstream printer("prn");
//U slucaju neuspesnog otvaranja printera
if(!printer)
{
cerr<<endl;
cerr<<"Error: neuspesno otvaranje printera!"<<endl;
Sleep(1500);
exit(1);
}
printer<<"Sadrzaj izvornog fajla"<<endl;
printer<<"**********************"<<endl;
while((ch=izvorni_fajl.get()) != EOF)
{
printer.put(ch);
}
//zatvaranje fajlova
izvorni_fajl.close();
printer.close();
system("PAUSE");
return 0;
}
|
[ karas @ 10.05.2008. 17:54 ] @
Hm, zašto bi, koliko vidim printer je običan fajl? Štampanje ne možeš da uradiš iz ANSI C++, moraš da pogledaš dokumentaciju kompajlera koju koristiš.
[ Fidelito_Castro @ 10.05.2008. 17:58 ] @
Znam da je tekstualni fajl.Ali nasao sam u reference da jednostavno pridruzivanjem stringa "prn" u XP-u objektu klase ofstream ( npr. ofstream printer_file("prn") ), uspevam da tretiram printer kao output(izlazni) stream?
U svakom slucaju hvala ti na brzom odgovoru!
[ karas @ 10.05.2008. 18:18 ] @
Nisam upućen u Windows platforumu ali zar je to dovoljno? Čini mi se da bi tu moralo biti još nečega osim davanja takvog imena fajlu, možda preusmeravanja na prn. Postavljeni kod bi trebalo samo da napravi fajl sa imenom prn.
[ Fidelito_Castro @ 10.05.2008. 18:22 ] @
Niti napravi fajl sa imenom "prn", niti uspe da pokrene stampac i odstampa tekst!
[ Fidelito_Castro @ 10.05.2008. 18:28 ] @
Evo ga tekst na engleskom:
If you know name assigned by your sistem to the printer (for example "prn" in the Windows environment)you can treat the printer as an output stream.To open printer for output, declare an ofstream object and attach the object to the printer.For example:
ofstream printer_file("prn");
All of methods we have used for ofstream objects will work for printer_file, as will the insertion operator.The following statement will print the word "Hello" on the printer:
printer_file<<"Hello"<<endl;
Izvinjavam se ako sam napravio gramaticku gresku prilikom kucanja.
[ karas @ 10.05.2008. 18:46 ] @
Verovatno da OS ne registruje prn kao printer. Da li je kreirao fajl sa tim imenom?
[ Fidelito_Castro @ 10.05.2008. 18:57 ] @
Sada sam opet probao, i nista!
Uopste ne kreira fajl sa imenom prn?
[ Fidelito_Castro @ 10.05.2008. 19:01 ] @
Kada je stampac ugasen, u cmd se ispise tekst "Error: neuspesno otvaranje printera!"!
Ali kada je upaljen ne?
[ karas @ 10.05.2008. 19:05 ] @
Meni pod Linuxom ovaj kod iskopira sadržaj datog fajla u fajl prn. Očito da je problem kako WIndowsu zadati štampanje u prn.Valjda će se javiti neko upućen.
[ X Files @ 10.05.2008. 20:26 ] @
Zar ne treba umesto PRN da bude LPT1 ?
[ Fidelito_Castro @ 10.05.2008. 20:36 ] @
Ne znam? Sad cu da probam, pa da vidim!
[ Fidelito_Castro @ 10.05.2008. 20:42 ] @
Sad mi prevodioc prijavljuje gresku prilikom povezivanja u .exe?
Error
Code:
Linking...
printer.obj : error LNK2005: _main already defined in ex1.obj
Debug/ex1.exe : fatal error LNK1169: one or more multiply defined symbols found
Error executing link.exe.
ex1.exe - 2 error(s), 0 warning(s)
[ X Files @ 10.05.2008. 20:47 ] @
Malo sam potrazio po netu, probaj da li ce raditi sa jednim od ovoga:
ofstream pout("PRN");
ofstream pout("LPT1");
ofstream pout("PRN:");
ofstream pout("LPT1:");
[ Fidelito_Castro @ 10.05.2008. 21:04 ] @
Neverovatno, opet nista!
Ako unesem ispravnu putanju za fajl,program jednostavno ceka(samo ne znam na sta)!
A ako unesem pogresnu putanju izbacuje Error!
Uspeva povezivanje u .exe kod "PRN:" i "LPT1:"!!!
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|