Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Delphi3: Fataler Fehler: ... Interner Fehler D1825 (https://www.delphipraxis.net/13876-delphi3-fataler-fehler-interner-fehler-d1825.html)

Stormwind 28. Dez 2003 13:27


Delphi3: Fataler Fehler: ... Interner Fehler D1825
 
Hilfe!
Ich habe versucht eine DLL-Funktion aus der inpout32.dll zu verwenden, der Compiler liefert obigen Fehler. Die folgenden Zeilen sind direkt aus der Hilfe entnommen.
Delphi-Quellcode:
function MessageBox(HWnd: Integer; Text, Caption: PChar;
  Flags: Integer): Integer; stdcall;
  external 'user32.dll' name 'MessageBoxA';
Hat schonmal jemand sowas erlebt und gefixt bekommen? Ich habe mal bei Borland gesucht, aber nur viel Blabla gefunden, nicht "meinen" Fehler.
Wär klasse, wenn mir jemand eine Lösung bieten kann, hab keine Lust per Modem die Delphi7-Version von Borland zu ziehen...
Bis denne,

[edit=sakura] [delphi]-Tags. Mfg, sakura[/edit]

scp 28. Dez 2003 13:32

Re: Delphi3: Fataler Fehler: ... Interner Fehler D1825
 
hmmm.. was hat die Funktion MessageBox aus der user32.dll mit der inpout32.dll zu tun?
Die MessageBox() bekommst du übrigens auch mit
Delphi-Quellcode:
uses
  Windows;
[edit]
inpout32.dll enthält folgende Funktionen (wenn es die ist, die du meinst):

Delphi-Quellcode:
function Inp(PortAddress : Word) : Word; external 'inpout32.dll' name 'Inp32';
procedure Outp(PortAddress : Word; Value : Word); external 'inpout32.dll' name 'Out32';
[/edit]

Stormwind 29. Dez 2003 11:05

Re: Delphi3: Fataler Fehler: ... Interner Fehler D1825
 
Ja, ich meine die gleiche inpout32.dll. Die hat mit user32.dll nur das gemeinsam, dass sie ne DLL ist und bei mir den gleichen Fehler erzeugt. Ich habe mir aus der Hilfe diese Zeile rausgesucht, weil ich denke, die sollte 100% funktionieren, tut sie aber leider nicht... Ich habevon der inpout32.dll eine Kopie im Verzeichnis, in dem mein Projekt ist (...\Eigene Dateien\Delphi) und eine Kopie im c:\Windows\System. Ist da vielleicht was falsch? Dann sollte aber trotzdem kein interner Fehler kommen oder?
Kann man das nun irgendwie fixen oder muss ich mir doch ne neue Delphi-Version besorgen?

scp 1. Jan 2004 23:06

Re: Delphi3: Fataler Fehler: ... Interner Fehler D1825
 
Also...
Ich habe Delphi 3 Build 5.83 Pro mit folgendem Update
http://info.borland.com/devsupport/d...2download.html

Folgenden Code habe ich erstellt:

Delphi-Quellcode:
implementation

{$R *.DFM}

function Inp(PortAddress : Word) : Word; external 'inpout32.dll' name 'Inp32';
procedure Outp(PortAddress : Word; Value : Word); external 'inpout32.dll' name 'Out32';

procedure TForm1.Button1Click(Sender: TObject);
var
 w : word;
begin
  Outp($0295, $80);
  w := Inp($0296);
end;

end.
Bei mir kommt kein Delphi Fehler, es funktioniert.

PS: Der Portzugriff ist nur ein Beispiel, funzt nicht auf jedem Rechner. Ich musste nur die beiden Funktionen irgendwo unterbringen, damit er sie auch tatsächlich importiert.

mirage228 2. Jan 2004 12:15

Re: Delphi3: Fataler Fehler: ... Interner Fehler D1825
 
Ich wollte es auch testen, nur habe ich keine inpout32.dll in meinem Windows Ordner... (Windows XP Prof. SP1)

mfG
mirage228

P.S.:
Ich habe auch Build 5.83 Pro mit dem 3.02er Update.

EDIT:
Das Exportieren der MessageBoxA aus user32.dll klappt ohne probleme.

Stormwind 2. Jan 2004 12:33

Re: Delphi3: Fataler Fehler: ... Interner Fehler D1825
 
Jetzt hab ichs! Jedenfalls den Compilerfehler weg... in der sehr spärlichen Doku zur inpout32.dll steht nämlich nicht drin, wie man die Funktionen in Delphi einbindet und auf irgendeiner Page standen die beiden Zeilen der Funktionsdeklaration in der Eventprozedur und nict direkt nach "implementation". Aber die Ausgabe funzt immer noch nicht. Hab die Prozedur Out32($037a,$01) aufgerufen, sollte eigentlich die Strobe-Leitung anschalten, tut sie nich. Wohin muss die DLL nun kopiert werden? Projekt-Verzeichnis, \Windows\System (da hab ich sie gerade)...?
Stormwind

scp 3. Jan 2004 10:52

Re: Delphi3: Fataler Fehler: ... Interner Fehler D1825
 
Zitat:

Zitat von Stormwind
...auf irgendeiner Page standen die beiden Zeilen der Funktionsdeklaration in der Eventprozedur und nict direkt nach "implementation".

Etwa mit GetProcAddress? Das geht natürlich auch.

Zitat:

Zitat von Stormwind
Wohin muss die DLL nun kopiert werden?

Das steht in der Readme, man soll sie ins System-Verzeichnis kopieren.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:36 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