![]() |
Re: LPT-Port steuern
Zitat:
@xstream: Es geht um einen kleinen generischen oder spezifischen Porttreiber um obige (ASM)Anweisungen zum Laufen zu bekommen. Ansonsten schau dir mal DeviceIoControl() an. Damit sollte es auch ohne extra Treiber möglich sein. Dazu gibt es aber einen anderen Thread irgendwo hier. |
Re: LPT-Port steuern
Die genaue URL ist
![]() Hast Du das gemeint, was nicht geht. Grüße Sven |
Re: LPT-Port steuern
Ich habe auch gerade mal meine Festplatte etwas durchforstet und habe da noch was gefunden. Nennt sich "TDLPortIO", darunter in Google suchen und Du findest dann was, was auch mit Delphi funktioniert. Eventuell muss da was nachgearbeitet werden damit es mit D7 funktioniert, dürfte aber nicht so schwer sein.
Grüße Sven |
Re: LPT-Port steuern
Hi,
vielleicht ist auch diese Seite interessant, ![]() auf dieser Seite sind u.a. die Funktionen und Prozeduren, für Delphi aufgeführt. Viel Spass |
Re: LPT-Port steuern
wieso nutzt ihr net die DP suche ? ich hab gewiss schon in mindestens 5 beiträgen auf genau diese fragen eine antwort gegeben
stichwort zlportio |
Re: LPT-Port steuern
Hallo,
hier ein kleines beispiel mit IO.DLL (Link von Blutiger Anfänger):
Delphi-Quellcode:
Beim ersten Start meckert Delphi. Ignoriere das, dort wird nur der Treiber installiert.
implementation
{$R *.dfm} procedure PortOut(Port : Word; Data : Byte); stdcall; external 'io.dll'; procedure PortWordOut(Port : Word; Data : Word); stdcall; external 'io.dll'; procedure PortDWordOut(Port : Word; Data : DWord); stdcall; external 'io.dll'; function PortIn(Port : Word) : Byte; stdcall; external 'io.dll'; function PortWordIn(Port : Word) : Word; stdcall; external 'io.dll'; function PortDWordIn(Port : Word) : DWord; stdcall; external 'io.dll'; procedure SetPortBit(Port : Word; Bit : Byte); stdcall; external 'io.dll'; procedure ClrPortBit(Port : Word; Bit : Byte); stdcall; external 'io.dll'; procedure NotPortBit(Port : Word; Bit : Byte); stdcall; external 'io.dll'; function GetPortBit(Port : Word; Bit : Byte) : WordBool; stdcall; external 'io.dll'; function RightPortShift(Port : Word; Val : WordBool) : WordBool; stdcall; external 'io.dll'; function LeftPortShift(Port : Word; Val : WordBool) : WordBool; stdcall; external 'io.dll'; function IsDriverInstalled : Boolean; stdcall; external 'io.dll'; procedure TForm1.Button1Click(Sender: TObject); var b:byte; begin If IsDriverInstalled then begin //die 0 ausgeben PortOut($378,$0); //Wert vom Port holen b:=PortIn($378); end; end; Ich hoffe ich habe dir geholfen. Warum man bei WIN98 direkt zugreifen kann und warum bei W2k, Winnt oder WinXP nicht, darüber lass ich mich hier zu einem späteren Zeitpunkt aus. Rainer |
Re: LPT-Port steuern
super vielen dank an alle
der tip von runger funktioniert ohne probleme,..... vielen dank.... |
Re: LPT-Port steuern
Zitat:
Ich denke vollen Portzugriff sollte jeder haben! :wall: Vielleicht sollte endlich mal ein VXer einen Virus schreiben, der dank einem generischen Portzugriff lustige Muster auf die CRT-Innenseite brennt (genügend leicht benutzbare Treiber/DLL-Kombos zum Thema gibt es ja), oder anders Hardware beschädigt. Dann ginge vielleicht auch hier den Leuten auf, daß es so nicht sein darf. |
Re: LPT-Port steuern
Hallo Mephistopheles,
Das von mir gelieferte Codebeispiel benutzt einen Treiber. ( Hatte ich beschrieben ). Es wird also der ganz normale Weg durch Windows genommen, so wie das der Printer und alle anderen Geräte auch tun. Der Treiber wird beim ersten Versuch die IO.dll zu benutzen installiert. Das hier ist kein Peek oder Poke wie du es vielleicht von Basic gewohnt bist. Rainer |
Re: LPT-Port steuern
Zitat:
Sicherheit ist eine Frage des Vertrauens. Wenn er damit leben kann, dass jede Software auf seinem System potentiell alle Ports verwenden kann, dann ist dies seine Entscheidung. Ich persönlich würde dieses Risiko auf Dauer nicht eingehen (und schon gar nicht für Produktionssysteme). |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:19 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-2025 by Thomas Breitkreuz