IRQ Handling unter Win2000, XP
-
Guten Morgen zusammen,
habe seit der Installation von Windows 2000 auf meinem Rechner einige Probleme mit dem IRQ Handling.
Ich verwende zur Ansteuerung einer ISA (Uralt)- Karte die Bibliothek (tvichw32).
Das hat bisher (unter Win 98) auch ganz gut funktioniert, aber leider habe ich nun unter Windows 2000 oder XP keine Möglichkeiten mehr, auf die Interrupts einzuwirken. Ich kann werder Interrupts (auf der Karte) auslösen, noch kann ich auf Interrupts reagieren.Habe schon einige Zeit mit Suchen (in Hilfe, Internet, News....) verwendet und hoffe nun, dass mir hier vielleicht jemand weiterhelfen kann.
Ich verwende zum Programmieren den BCB 5.Bin für jeden Tipp dankbar.
DANKE
-
Unter NT kannst du wegen des Sicherheits-Ring-Konzepts nicht einfach so direkt auf Hardware zugreifen. Dazu ist es nötig einen Treiber zu schreiben. Ich schieb dich mal nach WinAPI vielleicht können die dir weiterhelfen.
-junix
-
Hallo,
ich habe eigentlich keine Probleme mit dem Zugriff auf die einzelnen Ports,
das funktioniert.
Was mir Probleme bereitet ist die Verwendung des Interrupts.
Unter Win 98 kann ich Interrupts auslösen, und ebenfalls auf Interrupts reagieren. Dies ist aber leider nun mit Win 2000 oder Win XP nicht mehr möglich. Nur warum ?Kann mir vielleicht jemand einen Tipp geben.
DANKE
-
Genau diese Frage hat doch junix bereits beantwortet: Interrupts kannst du unter den "echten" Windows-Betriebssystemen nur im Kernel-Mode verarbeiten, und da kommen normalen Anwendungen nicht hin. Du brauchst einen Treiber für deine Karte.
-
Tja aber genau da liegt ja das Problem:
Meine Karte ist Marke "Eigenbau" und ich soll diese nun unter Win 2000 lauffähig bringen.
Was ich nicht verstehe:
Ich habe Zugriff auf die Hardware, nur die IRQ´s machen was sie wollen.
Zuerst dachte ich, es läge an den Einstellungen im Bios und in der IRQ- Verwaltung, aber wie ich das Sehe, gibt es wohl wenig Möglichkeiten, die Karte weiterhin auch unter Windows 2000 zu verwenden.
Habe ich das soweit richtig verstanden ?DANKE
-
Klar kannst du die Karte unter Windows 2000 verwenden. Du musst "nur" einen Treiber schreiben.
-
Erstmal danke ich dir MFK, für deine Unterstützung.
Da ich aber leider nicht so der "C++- Guru" bin, wäre ich dir dankbar, wenn du mir evtl. einen Link oder sonst eine Empfehlung nennen könntes, wie man einen Treiber schreibt.
Vielen Dank dafür
Frohes Arbeiten
-
Das ist leider nicht trivial. Um einen Treiber zu schreiben, brauchst du das DDK. Da ist auch eine Online-Hilfe und jede Menge Beispiele dabei.
http://www.microsoft.com/ddk/
-
Danke für deine Hilfe,
ich werde mich dann wohl mal mit der Treiberentwicklung auseinandersetzten.Einen schönen Tag noch
-
Mich würde mal interessieren, wieso du überhaupt an die Ports kommst. Die sind unter Windows 2000 nämlich genauso tabu wie Interrupts. Wäre ja auch noch schöner, wenn der nächste Virus sich gelich direkt mitm Festplattencontroller unetrhält
-
Hallo TriPhönix,
ich habe nur Zugriff auf die Ports über ein Tool Namens:
TVicHW32/TVicPort - access to PC hardware from Win32
http://www.entechtaiwan.com/tools.htmdamit funktioniert der Port Zugriff einwandfrei. Nur die Interrupts wollen nicht so, wie ich es gerne hätte.
Weisst du vielleicht noch mehr über die Windows 2000 Plattform und den Interrupthändle ?
Dank dir schon mal im Voraus