Autor Beitrag
Philipp_Reitter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 430



BeitragVerfasst: Fr 28.09.07 20:10 
hi

ich hab folgendes geschreiben:

ausblenden Delphi-Quelltext
1:
2:
  Sender.AddFunction(Slf, @Sin,   'procedure Sin(X: Real)');  /diese zeile sind die beiden fehler...
  Sender.AddMethod(Slf, @Delay, 'procedure delay(time: Integer)');


das mit delay geht!
nur bei sin und cos sagt er

ausblenden Quelltext
1:
2:
[Fehler] ParserDB.dpr(23): '(' erwartet, aber ',' gefunden
[Fehler] ParserDB.dpr(23): Inkompatible Typen


Mfg
Philipp
GTA-Place
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
EE-Regisseur
Beiträge: 5248
Erhaltene Danke: 2

WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
BeitragVerfasst: Fr 28.09.07 20:19 
Du sagst bei Sin und Delay, das seien Prozeduren (procedure Sin()), aber Delay fügst du mit AddMethod und Sin mit AddFunction hinzu. Da muss der Fehler liegen.

_________________
"Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
Philipp_Reitter Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 430



BeitragVerfasst: Fr 28.09.07 20:27 
ich versteh nicht ganz wann ich AddMethod und wann AddFunction hernehme?
edit: daran lags nicht...

aber das geht:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
function Sinu(X: Real): Single;
begin
  result := Sin(X);
end;

  Sender.AddFunction(@Sinu, 'function Sin(X: Real)');


aber das geht nicht:

ausblenden Delphi-Quelltext
1:
  Sender.AddFunction(@Sin, 'function Sin(X: Real)');					


warum das?!?!
Philipp_Reitter Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 430



BeitragVerfasst: Fr 28.09.07 21:50 
hab das jetzt mal so gemacht wie es funktioniert... so:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
Sender.AddFunction(@Sinus, 'function Sin(X: Real)');

function Sinus(X: Real): Single;
begin
  result := Sin(X);
end;


nur regt er sich dann beim Complimieren des scripts auf...

ausblenden Quelltext
1:
unable to register function function Sim(x: ReaL);					


das gleiche bei random...
nur delay und randomize gehen... also procedure laufen aber functionen nicht :(