AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Interrupts abhören

Ein Thema von Borti · begonnen am 12. Okt 2004 · letzter Beitrag vom 14. Okt 2004
Antwort Antwort
Borti

Registriert seit: 11. Okt 2003
151 Beiträge
 
#1

Interrupts abhören

  Alt 12. Okt 2004, 17:53
Hallo!
Gibt es unter Delphi irgendeine Möglichkeit Interrupts abzuhören?

Ich selbst hab mir schon eine etwas "harte" Variante als Notlösung überlegt:
Mann müsste einfach die Sprungadresse beim Interrupthandler auf eine procedure im eigenen Programm ändern. Über welche befehle kann ich in Delphi Zugriff auf sie Interruptvektoren kriegen?
Danke,
Borti
Ich hab's versucht
(auch wenn's nicht so aus sieht)
  Mit Zitat antworten Zitat
Benutzerbild von SleepyMaster
SleepyMaster

Registriert seit: 18. Mai 2003
634 Beiträge
 
#2

Re: Interrupts abhören

  Alt 12. Okt 2004, 18:09
Also soweit ich weiß ist das mit NT Kernel nur über Treiber möglich und die kann man nicht in Delphi schreiben.
  Mit Zitat antworten Zitat
Borti

Registriert seit: 11. Okt 2003
151 Beiträge
 
#3

Re: Interrupts abhören

  Alt 12. Okt 2004, 19:45
hab ich mir schon fast gedacht.
Einen Treiber um auf Register zuzugreifen hab ich (io.dll). daran sool's nicht scheitern.
ich müst doch eigentlich in die 4 register der interrupthandlers nur die Adresse meiner procedure schreiben. Jetzt ist halt die frage, wo ich die Interrruptvektoren herkrieg und vor allem die (reelle nicht virtuelle!)Adresse der procedure!
Gruß,
Borti
Ich hab's versucht
(auch wenn's nicht so aus sieht)
  Mit Zitat antworten Zitat
Benutzerbild von Mystic
Mystic

Registriert seit: 18. Okt 2003
Ort: Flerzheim
420 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Interrupts abhören

  Alt 12. Okt 2004, 22:12
Ich hab das Gefühl (bin mir nicht sicher) das dieses Vorhaben Windows zum Abstürzen bringen würde. Windows hat doch sicher schon seine eigene Methode die auf den Interrupt reagiert? Wenn du das überschreibst...
Jan Steffens
Der Fachwortgenerator - 100% Schwachsinn --- Der UPnP Router Manager - Kommentare erwünscht!
  Mit Zitat antworten Zitat
Borti

Registriert seit: 11. Okt 2003
151 Beiträge
 
#5

Re: Interrupts abhören

  Alt 13. Okt 2004, 13:03
Zitat:
Ich hab das Gefühl (bin mir nicht sicher) das dieses Vorhaben Windows zum Abstürzen bringen würde.

Ich will die Methode ja nicht komplett überschreiben, ich würde sie nachdem meine abgearbeitet worden ist hintendran hängen, aber darum kümmer ich mich später.
Ich hab's versucht
(auch wenn's nicht so aus sieht)
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#6

Re: Interrupts abhören

  Alt 13. Okt 2004, 13:45
Moin!

Auch bei diesem Thema frage ich mich nach dem Sinn und Zweck des ganzen und finde keinen. Geht es nur um die Hardware INTs oder auch um die Software INTs ? Bei ersteren kann ich noch ein sechstel Sinn erkennen, aber bei den letzteren nicht. Ich habe fast die Vermutung, das du, Borti, noch DOS und den RM im Kopf hast und an die API Bereitstellung durch Software INTs denkst oder an die Bedienung von Software INT API Aufrufe von einer DOS Konsole denkst (was eh nicht soweit kommt, weil die DOS VM das handelt innerhalb des Prozess)...
Daher verstehe ich den Sinn für diese Sache nicht...

MfG
Muetze1
  Mit Zitat antworten Zitat
Borti

Registriert seit: 11. Okt 2003
151 Beiträge
 
#7

Re: Interrupts abhören

  Alt 13. Okt 2004, 16:54
also,
ich will erreichen, dass auf den Hardwareinterrupt vom LPT-Port (IRQ7) eine ganz bestimmte procedure in meinem Programm ausgeführt wird.
So weit ich weiß liegen die Interruptvektoren in den ersten 1024 Bytes des RAMs und ich will die dortige Sprungadresse zur ursprüngliche Interriptroutine ändern, dass sie auf die procedure in meinem Programm zeigt.
Gruß,
Borti
Ich hab's versucht
(auch wenn's nicht so aus sieht)
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#8

Re: Interrupts abhören

  Alt 13. Okt 2004, 17:12
Zitat von Borti:
So weit ich weiß liegen die Interruptvektoren in den ersten 1024 Bytes des RAMs
Die IVT kann man prinzipiell überall hinsetzen, du müsstest also wissen, wo das bei Windows der Fall ist.
Aber warum muss es unbedingt der Hardwareinterrupt vom Parallelport sein, würde ein Polling nicht auch reichen (oder kann man sich sogar durch Windows irgendwie benachrichtigen lassen? ).
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#9

Re: Interrupts abhören

  Alt 13. Okt 2004, 19:16
Moin!

1. Das mit den ersten 1K gilt nur im Real Mode - im Protected Mode (Windows) ist das ganz anders
2. Wenn der LPT ein IRQ hat, dann bietet dir Windows bzw. die WinAPI auch die Möglichkeit dich darüber informieren zu lassen (wahrscheinlich Event)

MfG
Muetze1
  Mit Zitat antworten Zitat
Borti

Registriert seit: 11. Okt 2003
151 Beiträge
 
#10

Re: Interrupts abhören

  Alt 14. Okt 2004, 17:04
Mit dem pollen ist das so eine Sache. Das resultat (bzw. das problem) findet ihr hier: http://www.delphipraxis.net/internal...2617c0cb04fb81
Dieses benachrichtigen-lassen über die Win32API wär eigentlich eine sehr geschickte variante, aber wie mach ich das?
Gruß,
Borti
Ich hab's versucht
(auch wenn's nicht so aus sieht)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:10 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz