I am writing my own software in Delphi using ADC 20 and I have a problem in streaming mode using the HRDLGetValues function with a dynamic array.
I think that the problem comes from this dynamic array.
Indeed, using the Delphi exemple project: HRDL.dpr given as exemple with the drivers and dll in the adc20sdk_r1_0_0 directory, if I declare the values array of the procedure TfmHRDL.trmSamplesTimer(Sender: TObject) as a dynamic array I get an access violation cause the values array is actually empty:
I replace the line
values : array [1..max_samples] of longint;
in the var declaration of the procedure TfmHRDL.trmSamplesTimer by
values : array of longint;
and then I set the length of this array just before calling the HRDLGetValues function:
no_of_values := HRDLGetValues(hrdl_handle, values, overflow, max_samples);
//remembering that values now starts at 0 and not 1 anymore
I think I haven't done anything wrong so does anyone know if there are special things to set when using a dynamic array in this case or just if the use of these array is not possible?