Autor Beitrag
guenther
Hält's aus hier
Beiträge: 6

WIN 2000, WIN XP
D5 Prof, D7 Prof
BeitragVerfasst: Mi 21.01.04 18:47 
Hallo,

ich habe ein Programm in Turbo Pascal wo mit dem Befehl
Port[IOAdresse] direkt auf eine ISA-Karte zugegriffen wird.
Gibt es dafür einen Befehl in Delphi??

Danke

_________________
have fun
Andreas Pfau
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 997



BeitragVerfasst: Mi 21.01.04 19:08 
Hallo,

also, unter Win95/98/ME:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
var
  Address: Cardinal;
  Value: Byte;
asm
  Address := 888// Druckerport
  push dx
  mov dx, Address
  in al, dx
  mov Value, al
  pop dx
end;

Ausgabe:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
var
  Address: Cardinal;
  Value: Byte;
asm
  Address := 888// Druckerport
  Value := 0;
  push dx
  mov dx, Address
  mov al, Value
  out al, dx
  pop dx
end;

Unter NT/2k/XP brauchst du eine Systemdatei. Bei Torrys.

_________________
Life is a bad adventure, but the graphic is really good!
guenther Threadstarter
Hält's aus hier
Beiträge: 6

WIN 2000, WIN XP
D5 Prof, D7 Prof
BeitragVerfasst: Do 22.01.04 10:09 
Danke für die Antwort Andreas,

ich war nicht ganz konkret, ich möchte das mit Delphi 7 auf WinNT machen.
Was meinst du mit einer Systemdatei?

Sorry ich bin da echt nicht fitt :oops:

_________________
have fun
Andreas Pfau
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 997



BeitragVerfasst: Do 22.01.04 19:14 
Hallo,

also, da das ein recht harter Systemzugriff ist, will NT das nicht. Wenn die Anwendung nur für eigene Zwecke gedacht ist, könntest du auch die Triviallösung eingehen und den Kompatibilitätsmodus auf Win95, 98 oder ME stellen (EXE rechts anklicken, Eigenschaften).

Ansonsten brauchst du einen Systemtreiber, der das mit sich machen lässt. Kann man nicht mit Delphi, daher musste dir einen runterladen, z.B. hier: torry.net/portaccess.htm. Ich empfehle DirectPort von Sergey Ageev. Aber jeder andere NT-kompatible tuts natürlich auch.

_________________
Life is a bad adventure, but the graphic is really good!
guenther Threadstarter
Hält's aus hier
Beiträge: 6

WIN 2000, WIN XP
D5 Prof, D7 Prof
BeitragVerfasst: Fr 23.01.04 09:40 
Titel: Noch ne Frage
so ist das also, danke für den Tip.

Trotzdem versteh ich nicht wiso man (mit man meine ich einen "richtigen" Delphi Experten, nicht mich :? ) mit Delphi keinen Systemtreiber schreiben kann ?

_________________
have fun
Andreas Pfau
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 997



BeitragVerfasst: Fr 23.01.04 14:42 
Hallo,

warum kannst du mit deinem Auto nicht unter Wasser fahren? Warscheinlich, weil es nicht dafür ausgelegt ist. Borland hat Delphi eben für 32Bit-Windows-Anwendungen ausgelegt, und daher kann der Compiler auch keine Systemdateien erzeugen. Alles eine Frage des Compilers - ich denke (ich weiß es nicht), die Sprache an sich wäre Leistungsfähig genug (immerhin kann man auch ASM einbinden).

Entweder kaufste dir MSVC++ (ist die einzige Sprache von der ich weiß dass es geht), oder du lädtst dir so eine Systemdatei runter.

Aber, wie gesagt, wenn die Anwendung nur für dich sein soll, langt es wenn du dir Kompatibilitätseinstellungen änderst.

_________________
Life is a bad adventure, but the graphic is really good!
guenther Threadstarter
Hält's aus hier
Beiträge: 6

WIN 2000, WIN XP
D5 Prof, D7 Prof
BeitragVerfasst: Fr 23.01.04 14:56 
Ok, danke für die Erklärungen Andreas
ciao

_________________
have fun
MathiasH
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 699

WinXP, Win98SE, Debian, Win95
D5 Stand, D6 Prof
BeitragVerfasst: Fr 23.01.04 15:59 
ginge das mit den systemdateien in delphi eigentlich, wenn du sie komplett in asm schreiben würdest?, oder ginge das dann mit nem asm->exe programm?

_________________
"Viel von sich reden, kann auch ein Mittel sein, sich zu verbergen."
Friedrich Nietzsche
Motzi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 2931

XP Prof, Vista Business
D6, D2k5-D2k7 je Prof
BeitragVerfasst: Fr 23.01.04 16:19 
Titel: Re: Noch ne Frage
guenther hat folgendes geschrieben:
Trotzdem versteh ich nicht wiso man (mit man meine ich einen "richtigen" Delphi Experten, nicht mich :? ) mit Delphi keinen Systemtreiber schreiben kann ?

Da kann ich dir nur raten den Kommentar von Nico Bendlin auf Luckies Homepage zu diesem Thema zu lesen:
www.luckie-online.de.../grenzendelphi.shtml

_________________
gringo pussy cats - eef i see you i will pull your tail out by eets roots!
elbrand
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 17



BeitragVerfasst: Fr 23.01.04 19:01 
Titel: port?
auf welchen port willst du denn zugreifen? z.b. für die seriellen ports gibt es sehr kompfortable windowsfunktionen.

_________________
-=siehe rueckseite=-
smilie128
ontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic starofftopic star
Beiträge: 48



BeitragVerfasst: Di 27.01.04 07:53 
Hallo Guenther

Ich bin zwar kein Experte aber unter Delphi 6 habe ich einen Zugriff auf den Parallel Port mit Hilfe der folgenden Internet-Seite realisiert.
www.geekhideout.com/iodll.shtml
Funktioniert nei mir unter Win 98 , Win2K und WinXP
Im Prinzip kann man da auch andere Port-Adressen eingeben.
Man muß nur wissesn welche Adressen manschreiben und lesen will.
Die Adresse der ISA-Karte läßt sich ja in den Hardware-Einstellungen herausfinden.
Vielleicht hilfts ja.
Was ist das denn für eine Karte, die du ansprechen willst?
Mfg
smilie128