--- In [email protected], "jabauzit" <jabau...@...> wrote: > > I started to write a dll in Delphi. > Why Delphi? Because I have been using it since the beginning of > times. > While I wrote tons of code this is my first dll. > Lots of crashes and progress made by trial and error. --- snip ---
Jean-Claude, personally I am not too much familiar with Delphi Pascal, so my suggestions are of a general nature. The first thing I would do is to check how parameters are passed and received by Pascal, and if the function names need any type of "decoration". Winrad is written using C++Builder, and it expects that the conventions of function naming and parameters passing are those of C++. Another clue could come from the fact that you say that Winrad closes abruptly, without any error messages. This is typical of the Signal Processing Library used inside Winrad. When that library encounters an error, it simply closes the process, without any form of warning or error messages. So I would check the contents e.g. of the IQdata parameter. If that array contains values that can cause a severe error in the computations done with that library, then the consequences could be that of an abrupt closing of the program. You could place a breakpoint just where you are calling the callback procedure and inspect the actual values of the data. As a debug measure, you could set all the IQdata array at zero, and pass this to Winrad. If the error was caused by what I said above, now it should disappear. This would put you on the right track. Good Luck ! 73 Alberto I2PHD
