Переписал код дллимпорта как вы сказали. Пришлось чуть-чуть и подредактировать код основной функции так:
Код:
double result;
float value = 0;
result = NativeMethods.OpenPort(2, 8, 0, 1, 0, 1);
Console.WriteLine(result);
result = NativeMethods.ReadFloat24(32, 0, "PV", ref value, 0);
Console.WriteLine(result);
Console.WriteLine(value);
result = NativeMethods.ClosePort();
Console.WriteLine(result);
Console.ReadLine();
Но всё равно не работает, код ошибки - NaN, т.е. я даже не знаю, что за ошибка. Есть идеи?