Delphi-PRAXiS
Seite 2 von 6     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Fehler: Undefinierter Bezeichner! Wo liegt das Problem? (https://www.delphipraxis.net/134193-fehler-undefinierter-bezeichner-wo-liegt-das-problem.html)

AlexII 17. Mai 2009 16:08

Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
 
Zitat:

Zitat von mkinzler
Dann übergib den Stream doch als weiterer Parameter oder mache aus der freien Prozedur eine Methode

Wow :gruebel: wie geht das den?

mkinzler 17. Mai 2009 16:38

Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
 
Zitat:

Zitat von AlexII
Zitat:

Zitat von mkinzler
Dann übergib den Stream doch als weiterer Parameter oder mache aus der freien Prozedur eine Methode

Wow :gruebel: wie geht das den?

Delphi-Quellcode:
procedure StatusProc( FileStream: TFileStream; buffer: Pointer; len, user: DWORD); stdcall;

AlexII 17. Mai 2009 19:06

Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
 
Danke Dir :thumb:

AlexII 21. Mai 2009 11:15

Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
 
Aber die Fehlermeldung ist geblieben? :gruebel:

Vllt soll ich aus der freien Prozedur eine Methode machen, aber wie geht das? Wer kann mir helfen?

mkinzler 21. Mai 2009 11:18

Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
 
Delphi-Quellcode:
T<Klasse> = class(<Superklasse>)
private
    { Private declarations }
    procedure StopRec;
    { public Methods }
    procedure StatusProc(buffer: Pointer; len, user: DWORD);
   ...
end;
...

procedure T<Klasse>.StatusProc(buffer: Pointer; len, user: DWORD);
...

Gausi 21. Mai 2009 14:01

Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
 
Wenn StopRec eine Methode einer Klasse ist, warum nicht einfach
Delphi-Quellcode:
MeinePlayerKlasseVariable.StopRec;
aufrufen?

Parameter und Art von Statusproc ändern mag wahrscheinlich die Bass.dll nicht, um die es hier geht.

AlexII 31. Mai 2009 09:52

Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
 
Gausi wie meinst du das, ich hab ja keinen Player im Programm? :gruebel:

Die Muhkuh 31. Mai 2009 11:09

Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
 
Im Moment liegt hier noch ein Designproblem vor.

Wie schon geschrieben wurde, mach aus der Prozedur erstmal eine Methode, Markus zeigte zwei Posts davor, wie es funktioniert.

Wenn dann mal alles in einer Klasse ist, sehen wir weiter.

Bruchteilhafte Lösungen bringen in diesem Fall nicht viel, denn das was Gausi vorschlägt, geht erst, wenn das Designproblem behoben ist, ansonsten kann das nicht wirklich funktionieren.

AlexII 31. Mai 2009 11:17

Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
 
Gausi schreibt ja, dass die Bass.dll die Änderung nicht mag, deswegen dachte ich seine Lösung ist ohne Procedureänderung.

Na gut, ich versuch's.

Gausi 31. Mai 2009 12:40

Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
 
In deinem Codeauschnitt weiter oben steht StopRec direkt unter private. Das lässt mich vermuten, dass StopRec eine private Methode einer Klasse ist. Da, wo ich sowas verwende, ist diese Klasse eine Player-Klasse, daher habe ich was von "MeinePlayerKlasseVariable" geschrieben. Ich würde jetzt vermuten, dass die Klasse mit der Methode StopRec deine Formklasse ist (also TForm1 oder so). Dann musst du halt
Delphi-Quellcode:
// MeinePlayerKlasseVariable.StopRec; // so nicht
Form1.StopRec; // sondern so
aufrufen. StatusProc selbst sollte nicht als Methode einer Klasse implementiert werden, da das Ding von der Bass.dll als Callback-Routine aufgerufen wird.


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:08 Uhr.
Seite 2 von 6     12 34     Letzte »    

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