![]() |
Datenregister der LPT schnittstellle abfragen.
Hallo
ich benutze die inpout32.dll zur ansteuerung der lpt-schnittstelle. Dazu brauch Die Portnummer Des Datenregisters. Da mein programm auch ohne user eingaben funktionieren soll wollt ich mal fragen ob jemand weiss wie ich an diese Daten komme. Werden solche einstellungen in der Regestry gespeihert und wenn ja wo? gruß snow PS:// die verwendung einer Tabelle will ich verhindern, da viele PC(z.b notebooks) von diesen Standarteinstellungen abweichen. Auch brauch ich die infos nicht nur für lpt1/lpt2 sondern allgemein. |
Re: Datenregister der LPT schnittstellle abfragen.
Zitat:
das wird in den meisten Fällen nicht mehr funktionieren: Eine feste IO-Adresse haben nur Standard-LPTs auf dem Motherboard, die sind aber fast ausgestorben. Bei PCI-Steckkarten wird der IO-Bereich vom Treiber beim Booten festgelegt, kann sich also jederzeit ändern, z.B. beim Stecken anderer Karten. Redirected Ports (USB,Ethernet) haben überhaupt keine IO-Adresse. Also beschränkst du dich gleich auf 2F8/3F8 oder du brauchst eine ganz andere Software. Gruss Reinhard |
Re: Datenregister der LPT schnittstellle abfragen.
Zitat:
@snow: was hast du überhaupt vor? Vllt. kann man das ganze ja mit der WinAPI lösen. |
Re: Datenregister der LPT schnittstellle abfragen.
Ich will Pollin-K8 Relaiskarten ansteuern.
dazu muss ich einfach den Zustand der 8 Relais zum LPT schicken(ins Datenregister). Mein Arbeitgeber hat aber viele Relaiskarten(Modelleisenbahn-Weichensteuerung). er benutz Pollin PCI erweiterungskarten.(hat also auch E/A-Bereiche). Da der user aber nicht so viel wissen haben soll um meine software zu verwenden soll sich dass programm automatisch die E/A-Bereiche für LPTX besorgen. Ich weiss, dass die InpOut32.dll nicht der von Bill Gates anerkannter Weg ist aber ich find einfach keine Freeware LPT-Komponente bzw kein Tutorial für eine WinAPI-Lösung.(ich weiss es gibt hier eins im Forum aber dass check ich net). gurß snow |
Re: Datenregister der LPT schnittstellle abfragen.
Hallo zusammen!
Bin heute über eine ganz andere Sache ins Forum gestolpert. Also, wenn ich die richtig verstanden habe möchtest Du Daten über die parallele Schnittstelle ausgeben bzw. eingeben. Überlicherweise gibt es am PC nur max. 2 parallele Schittstellen - LPT1 (Adr. 378hex) und LPT2 (Adr. 278hex). Weitere Parallelports sind eher unüblich, Du kannst sogar davon ausgehen, daß die meisten Systeme nur den LPT1 besitzen. Vielleicht hilft Dir erst einmal folgender Code weiter: ![]() Das Beispiel ist eigentlich recht flexibel gehalten, so daß Du theoretisch auch mit anderen Ports arbeiten kannst, Du brauchst halt nur die Portadresse. Ansonsten würde ich Dir das Buch "PC-Schittsellen" von Michael Thieser empfehlen. Hier sind alle gängigen Schnittstellen beschrieben und auf der dem Buch beiliegenden CD sind auch verschiedene Schnittellenbibliotheken (in C, Pascal, VB und Powerbasic) dabei. Am Ende des Buches gibt es auch einen Hardwareteil, wo unter anderem auch ein Seriell-Parallelwandler hard- und softwaremäßig beschrieben wird. Das Buch hat die ISBN 3-7723-8092-1. Das Buch ist zwar schon älter, beschreibt aber alles rech ordentlich |
Re: Datenregister der LPT schnittstellle abfragen.
Nein Der Code ist direkt, sprich unter windows >NT nicht einsatzfähig.
Es funktioniert ja schon mit der .dll aber da ich weiss, dass mein Kunde mehrere ERweiterungskarten nutzen will muss auch LPT3,4,5 usw unterstütz werden. gruß snow PS:// ich hab grad was bemerkt.... der Pegel der Schnittstelle ist genau andersrum als die programm eingabe. Sprich wenn ich pin eins auf 1 schalte hab ich 0 V wenn ich auf aus schalte hab ich 5-7 Volt. |
Re: Datenregister der LPT schnittstellle abfragen.
Gibt es in der DLL eine Funktion mit der man die vorhandenen Schnittstellen abfragen kann? Wenn nicht, dann hast Du wahrscheinlich verloren. Solche hardwarenahen Abfragen gehen nun mal nur über Assembler vernünftig.
Versuchs mal mit dem Windows-API. Wahrscheinlich muß Du nur über alle Hardwarekomponenten "enumerieren". Bei Delphi gibt es eine Hilfe zum Windows-API. Geb dort mal bei Suchen DeviceCapabilities oder LPT ein. Vielleicht kommst du dann weiter. Hab noch mal auf die Schnelle gegoogelt. Vielleicht hilft dieser Link ![]() Schau mal bei der JEDI-Komponentensammlung vorbei. Ich meine, daß es da was passendes gibt. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:50 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz