hej igen nu har jeg fået en turbo pascal kode der lyder sådan:
Program lpt2_output;
Uses Dos;
Var addr:word; data:byte; e:integer;
Begin addr:=MemW[$0040:$000A]; Val(ParamStr(1),data,e); Port[addr]:=data; End.
til at styre parallel porten men hvordan bruger jeg programmet det med at lave det til en exe fil er ikke noget problem men at bruge programmet det er der pro. ligger er der en der kan hjælpe mig??
De fleste virksomheder har efterhånden bevist, at AI virker.
Pilotprojekter leverer resultater. Medarbejdere bruger generative AI-værktøjer. Nye use cases dukker op på tværs af organisationen.
Ved doskommandolinien skal du skrive programnavnet og umiddelbart efter den teklst du vil have printeren til at skrive.
Lad os sige dit program hedder "LPTOUT.EXE" og du vil have skrevet teksten "Hello" ud på printeren, så skal du skrive, ud for dos-promptet:
LOPOUT hello
linien:
Val(ParamStr(1),data,e);
omdanner parameter 1 på kommandolinien (d.v.s. det første der kommer efter selve programnavnet inden næste mellemrum) til data, men da data er af typen Byte (og du bruger val) vil det i mit ex. betyde at du kun får udskrevet et tegn af ordet "Hello". Og fordi du omdanner det med VAL() bliver det ascii-værdien for stort H der bliver overført til printeren. Stort H har værdien 72 decimalt i Ascii-tabellen, og når printeren modtager en ASCII-værdi omsætter den det til det tegn den kender i dens indbyggede Ascii-tabel, hvilket i de fleste tilfælde også er H (måske er det anderledes for kinesiske tegn o.s.v.) mem normalt vil det bare være H.
Så hvis du skriver
LPTOUT Hello
ved dos-prompt, skriver printeren bare
H
Så er den ikke længere.
Hvis du ville have printeren til at skrive hele ordet skulle programmet have været lavet således:
Program lptout;
Uses Dos;
Var i : integer; s : string[255];
procedure out_char(b : byte); var addr:word; begin addr:=MemW[$0040:$000A]; Port[addr]:=b; end;
Begin s := paramstr(1); if s <> '' then begin for i := 1 to length(s) do out_char(s[i]); end; End.
Men dit lille program kan f.eks. bruges til at få printeren til at skifte side, fordi kommandoen til printeren om at skifte side kun er på et tegn, nemlig Ascii værdien 12 (FormFeed).
denne værdi kan man skrive som et tekst "^L" ved at holde på ALT tasten mens man trykker 12 på det numeriske tastatur.
Programmen kunne derfor bruges således:
LPTOUT ^L
og ville så sende en formfeed til printeren der vil spytte papiret ud, eller en side frem.
Synes godt om
Slettet bruger
21. marts 2000 - 20:06#3
øhhh hvis jeg gerne vil have den til at sidde strøm på pin 1 og 2 hvordan gør jeg det. efter at have læst dit svar har jeg lige fåndet ud af at det ikke er det jeg skal bruge jeg skal bruge et program der kan åbne for pin 1 og 2 har du sådan et???
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.