Solved

Read/Write to Paralel port

Posted on 2001-06-22
9
216 Views
Last Modified: 2010-04-06
How do i read/write to the paralel port without using asm(in/out).

Thanks

_LR_
0
Comment
Question by:_lr_
  • 2
  • 2
  • 2
  • +3
9 Comments
 
LVL 13

Expert Comment

by:Epsylon
ID: 6218541
0
 

Author Comment

by:_lr_
ID: 6218862
With componet, there isn't any there that alows the read and write from/to the paralel port

_LR_
0
 
LVL 2

Expert Comment

by:egono
ID: 6219089
it's possible to use the standard file functions to read/write the parallel port

use

CreateFile( 'LPT1:',GENERIC_READ + GENERIC_WRITE,
           0 , nil, OPEN_EXISTING, 0 + FILE_FLAG_WRITE_THROUGH, 0 );

to open a file handle, after that you can use the ReadFile() and WriteFile() functions

good luck
0
Complete VMware vSphere® ESX(i) & Hyper-V Backup

Capture your entire system, including the host, with patented disk imaging integrated with VMware VADP / Microsoft VSS and RCT. RTOs is as low as 15 seconds with Acronis Active Restore™. You can enjoy unlimited P2V/V2V migrations from any source (even from a different hypervisor)

 
LVL 5

Expert Comment

by:Gwena
ID: 6220408
If you need to access the port on NT then you may need this freeware
that gives you access http://www.internals.com/utilities/winio.zip  I have
a unit to make it easier to use... just let me know if you need that :-)
0
 
LVL 17

Expert Comment

by:inthe
ID: 6220499
or

http://www.wideman-one.com/gw/tech/Delphi/iopm/index.htm

+ some good texts at that site for io programming.
:-)

0
 
LVL 5

Expert Comment

by:Gwena
ID: 6220514
Hi inthe :-)

  That is a GREAT link!
0
 
LVL 2

Expert Comment

by:egono
ID: 6223978
gwena - it's absolutely the wrong way to use such a driver for accesing the parallel port on NT/W2K!
NT/W2K have two standard drivers for both the seriell and the parallel ports which can be accessed in the described way. So if you use another driver, then two drivers accessing the same hardware - not a very good idea.
Such I/O drivers are only good for non standard hardware, which have no NT/W2K drivers.

if someone is interested in german resources look here:

http://www.nt-treiberentwicklung.de/kapitel5.htm


good luck
0
 

Accepted Solution

by:
bullen earned 100 total points
ID: 6245103
For Win95,98 but You should use it with care.

procedure Lpt_Out(b:byte);
asm
  mov dx,$378
  mov al,b
  out dx,al
end;

function Lpt_in : byte;
asm
  mov dx,$378
  in al,dx
end;
// $378 = LPT1 on my computer

bullen
0
 
LVL 17

Expert Comment

by:inthe
ID: 6441174
"  without using asm(in/out)  "

strange answer you accepted there ...
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

A lot of questions regard threads in Delphi.   One of the more specific questions is how to show progress of the thread.   Updating a progressbar from inside a thread is a mistake. A solution to this would be to send a synchronized message to the…
Creating an auto free TStringList The TStringList is a basic and frequently used object in Delphi. On many occasions, you may want to create a temporary list, process some items in the list and be done with the list. In such cases, you have to…
This video shows how to use Hyena, from SystemTools Software, to bulk import 100 user accounts from an external text file. View in 1080p for best video quality.
Established in 1997, Technology Architects has become one of the most reputable technology solutions companies in the country. TA have been providing businesses with cost effective state-of-the-art solutions and unparalleled service that is designed…

773 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question