![]() |
Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
Zitat:
|
Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
Zitat:
Delphi-Quellcode:
procedure StatusProc( FileStream: TFileStream; buffer: Pointer; len, user: DWORD); stdcall;
|
Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
Danke Dir :thumb:
|
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? |
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); ... |
Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
Wenn StopRec eine Methode einer Klasse ist, warum nicht einfach
Delphi-Quellcode:
aufrufen?
MeinePlayerKlasseVariable.StopRec;
Parameter und Art von Statusproc ändern mag wahrscheinlich die Bass.dll nicht, um die es hier geht. |
Re: Fehler: Undefinierter Bezeichner! Wo liegt das Problem?
Gausi wie meinst du das, ich hab ja keinen Player im Programm? :gruebel:
|
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. |
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. |
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:
aufrufen. StatusProc selbst sollte nicht als Methode einer Klasse implementiert werden, da das Ding von der Bass.dll als Callback-Routine aufgerufen wird.
// MeinePlayerKlasseVariable.StopRec; // so nicht
Form1.StopRec; // sondern so |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:08 Uhr. |
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