Интересно... dll'ка написана на Си, версию компилятора не знаю - что-то научно-бесплатное =)
Каким же тогда образом можно передать размер массива в dll? Компилятор не ругается на array of size_t, молча проглатывает array[1..n] of size_t. Проблема с результатом от библиотеки.
Если задавать массив динамически, размер указывать через setLength... , то dll возвращает ноль. Если задавать статически и указать неверное значение элементов (n)- тоже ноль.
Работает только если точно знать размерность передаваемого массива. В моем случае это либо 3, либо 4 оси. Знать их число заранее не могу - оно вытаскивается из открываемого файла (большие массивы данных, формат netcdf).
На данный момент читается только один тип файлов - либо [0..2], либо [0..3] - как указано при компиляции. Как этот момент обойти, пока не придумал =(
|