Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 10 odgovora
  • 5.297 pregleda

Najnovija ↓

Stampanje u turbo pascalu? 14.02.2005. u 20:28 · pre 264 meseca
izmenjeno 1 put, poslednji put Bormi 24.02.2005. u 21:28
  1. Bormi24.02.2005. u 21:28zapis iz teksta poruke
#1
Dali zna neko kako se moze stampati iz programa pravljenog u turbo pascalu
Sta da dodam u kod programa? . Ali sa USB stampacem?????
Re: Stampanje u turbo pascalu? 15.02.2005. u 01:04 · pre 264 meseca #2
Ne postoji ni jedna procedura koja ce ti to odraditi, moras sve odraditi rucno. Posto nisi definisao, predpostavicu da ti treba za tekstualni ekran.

Sto se tice stampanja, pogledaj Help za Printer Unit. Ne secam se bas najbolje, ali mislim da je u njemu definisana Lst ili bese Lpt promenljiva preko koje se izvodi stampanje. Nemam intaliran TP pa da sada isprobam, ali mislim da ne bi trebao da bude problem da ovo skontas i sam.

Posto zelis da odstampas sadrzaj ekrana, trebace ti i funkcija kojom mozes da "procitas" sta se nalazi na odredjenoj poziciji na ekranu:

Code:

Function GetChar (x, y : Integer) : Char;

Var
  Regs : Registers;

Begin
  GotoXY (X, Y);
  FillChar (Regs, SizeOf (Regs), 0);
  Regs.AH := 8;
  Regs.BH := 0;
  Intr ($10, Regs);
  GetChar := Chr (Regs.AL);
End;


Znaci, dve For petlje, jedna od 1-80, druga od 1-25 (ako koristis klasican tekstualni video mod - 80x25) i udri, karakter po karakter... :)

E, da,.... u Uses moras da dodas DOS i CRT.

Nadam se da ce ovo pomoci ...
Re: Stampanje u turbo pascalu? 15.02.2005. u 13:51 · pre 264 meseca #3
Za stampu probaj ovako (koristeci i funkciju od IgLo-a):

Code:

...
Var 
  f:textfile;
  i,l: integer;
begin
  Assign(f, 'LPT1:');
  Rewrite(f);
  for i:= 0 to 24 do
  begin
    for l:= 0 to 79 do
       Write(f, GetChar(l,i));
    Write(f, #13);
  end;
  Close(f); 
end;


Trbalo bi dodati i proveru gresaka.
Re: Stampanje u turbo pascalu? 15.02.2005. u 19:04 · pre 264 meseca #4
Citat:
Da li ima neka procedura za to ili nesto slicno.



Nema procedure. Pod DOS-om prilikom pritiskanja tastera Print Screen

štampao se ceo tekstualni ekran. Sistemski, prilikom pritiska tog tastera

generiše se int 05h. Možda bi pomoglo kada bi softverski pozvao ovaj

prekid.
Re: Stampanje u turbo pascalu? 16.02.2005. u 20:32 · pre 264 meseca #5
Pokusao sam ali kad probam program onda mi se pojavi error "160 Device write fault". Sta nevalja ????

Re: Stampanje u turbo pascalu? 16.02.2005. u 22:09 · pre 264 meseca #6
Da nemaš slučajno USB štampač? Just a tought...

ss.
Potpis
When something is hard to do, then it's not worth doing.
Re: Stampanje u turbo pascalu? 17.02.2005. u 16:02 · pre 264 meseca #8
Pa onda ova funkcija za štampanje neće da može, jer ona pokušava da štampa na LPT. Iz DOSa na USB se, koliko ja razumem, nećeš naštampati, jer DOS naravno nema podršku za USB uređaje.

ss.
Potpis
When something is hard to do, then it's not worth doing.
Re: Stampanje u turbo pascalu? 18.02.2005. u 01:12 · pre 264 meseca #9
Koliko znam TP u DOS-u moze da koristi DLL-ove. Bio je jedan primer (Sah) koji je imao DOS i WIN variantu u TP7 i obe su koristile iste DLL-ove za vestacku inteligenciju. Mogao bi da napises neki 16-bitni WIN DLL koji moze da stampa na bilo kom stampacu i da ga pozivas iz DOS aplikacije. Ovo radi sigurno jer znam da sam pod DOS-om u TP7 pravio aplikaciju koja ispisuje koji su fontovi instalirani u Windows-u. Samo koliko se secam umesto TP.EXE treba da pokrenes TPX.EXE i u njemu da pravis aplikaciju.
Potpis
Play Store
Re: Stampanje u turbo pascalu? 20.02.2005. u 03:46 · pre 264 meseca #10
Da li ce se tvoj program pokretati u cistom dosu ili command promptu windowsa?
Ako je u cmdpromptu onda mozes da probas sa sledecim: Vidi u cpanelu na koji (virtuelni) port je povezan stampac (trebalo bi da bude nesto kao USB001 ili sl.), pa onda vidi da li radi...
Code:

copy imefajla.txt USB001:

ili copy imefajla.txt prn:
premda, ovo drugo sam 90% siguran da ne radi...
Jedino ne znam kako u TP-u dati DOS-u ovakvu komandu, mozda sa Assign(F, 'USB001:') ili nesto sl.

Nemam stampac pa ne mogu da probam, ali znam da sam u jednoj firmi imao problema sa (starim matricnim) stampacem i QReports-om, pa sam stampu morao da implementiram tako sto cu generisati textfile koji cu kopirati na uredjaj LPT1:.

Btw., interesantna stvar je to sto je windows pri pokretanju copy komande napravio spool job za stampanje sa sve ikonicom u tray-u, brojem strana, itd, samo ne sa CopyFile API pozivom, vec sa WinExec bat fajla koji sadrzi komandu copy temp.txt lpt1:... E sad, ne znam zasto sam vam ovo ispricao, ali znam da ne skodi...
Re: Stampanje u turbo pascalu? 21.02.2005. u 16:27 · pre 264 meseca #11
Ljudi meni treba da odstampam nesto u programu pisanom u pascalu sa USB stampacem . Primam sve predloge.
Ovo prije nista ne moze sa USB stampacem.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme