Autor Beitrag
smokydog
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 38



BeitragVerfasst: Mo 10.01.05 18:58 
Hallo erstmal

Vielleicht klingt es doof aber ich weiss nicht weshalb ich einen Fehler bekomme.
Wenn ich die procedure starte in der eine andere Function benutzt wird jammert er immer.
Bitte helft mir :)

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
function blubber(blub:string):string;
begin
......
end;

procedure bluu(muh:string);
begin
...
add := blubber(muh);
...
end;



Moderiert von user profile iconTino: Topic aus Sonstiges verschoben am Do 13.01.2005 um 09:45
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Mo 10.01.05 21:17 
Das Weglassen der Fehlermeldung ist einer der beliebtesten Fehler überhaupt in einem Forum. :P Insofern kann man nichts darüber sagen, was wo blubbert und warum es "muh" macht.

Der einzige Anhaltspunkt ist das "add". Wie das aussieht weiß ich nicht. Welcher Typ usw. Dieses Wort ist allerdings bei Borland & Co sehr beliebt. Und die Glaskugel meint gerade, es könnte eventuell mit einem WITH zusammenhängen.

_________________
Gruß
Hansa
Karlson
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Mo 10.01.05 21:26 
Meine Glasskugel meint das da sowas wie 'undefinierter Bezeichner' kommen müsste.
Procedure und Function müssen geforwardet werden.

Und der Syntax um das add ist höchst verdächtig, da schließ ich mich Hansa an.
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Mo 10.01.05 21:36 
Karlson hat folgendes geschrieben:
Procedure und Function müssen geforwardet werden.


Nein, wieso denn das ? :shock: Das sind ganz normale Functions / Prozeduren.

_________________
Gruß
Hansa
Karlson
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Mo 10.01.05 22:43 
ups, tut mir leid. Ich hab micht verlesen und gedacht, die procedure sei vor der function impletiert worden. sorry.

Tja in diesem Fall hat Hansa noch mehr recht. Also: Fehlermeldung und ganzer Source, wenns geht.
JayEff
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 2971

Windows Vista Ultimate
D7 Enterprise
BeitragVerfasst: Mo 10.01.05 22:51 
ähm.. ich als nich so der oberchecker.. bin mir nich sicher.. aber klappts vll mit

smokydog hat folgendes geschrieben:
Hallo erstmal
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
function TForm1.blubber(blub:string):string;
begin
......
end;

procedure bluu(muh:string);
begin
...
add := blubber(muh);
...
end;


edit: Nope.. mit
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
function blubber(blub:string):string;
begin
result:='asd';
end;

procedure bluu(muh:string);
begin
muh := blubber(muh);
end;

klappts bei mir prima.

_________________
>+++[>+++[>++++++++<-]<-]<++++[>++++[>>>+++++++<<<-]<-]<<++
[>++[>++[>>++++<<-]<-]<-]>>>>>++++++++++++++++++.+++++++.>++.-.<<.>>--.<+++++..<+.
Karlson
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Di 11.01.05 00:17 
Moin!

Das, was du vorschlägst würde dem von von mir angesprochenem forwarden entsprechen.
Nur der vollständigkeit halber, in deinem ersten QT hast du vergessen die function im Interface einzufügen.
Das forwarden, wäre nur dann nötig, wenn entweder die Funktion erst nach der Prozedur implentiert worden wäre, oder aber, wenn in der Prozedur auf Objekte, die in der unit deklariert worden sind (also z.B. ein Panel) zugegriffen wird, es wäre aufgrund dieses add's doch anzunehmen, dass er auf einen Listbox oder ein Memo oder sowas zugreift, und deswegen den Fehler bekommt, aus dem doch sehr dürftigen Code geht das allerdings nicht hervor.

Alternative ohne forwarden: Anstatt panel1.color := cllime, form1.panel1.color := cllime schreiben, was allerdings später noch zu problemen führen kann. Also forwarden!
hansa
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 3079
Erhaltene Danke: 9



BeitragVerfasst: Di 11.01.05 02:34 
Karlson hat folgendes geschrieben:
Das, was du vorschlägst würde dem von von mir angesprochenem forwarden entsprechen.


Karlson, vergesse in diesem Zusammenhang endlich das FORWARD. Du hast es doch selber ungefähr beschrieben, wozu das ganze gut ist. In zigtausend Zeilen Source ist bei mir ein FORWARD drin und nur, weil es um eine Komponente geht, die ich umgebaut habe und nicht so tief einsteigen will.

Wenn das "muh" nun geht, so sehe ich nur, daß es kein "add" mehr ist. Ansonsten ist alles identisch.

_________________
Gruß
Hansa
smokydog Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 38



BeitragVerfasst: Di 11.01.05 16:50 
danke. Die Fehlermeldung hätte eh nicht weiter geholfen.
Ich habs gelöst, es war ein falscher Wert der alles verursachte.