Добрый день.
О функциях UNIT.ocx.
1. long InitUnit();
Функция, которая в существующей весии Unit.ocx ничего не делает. Оставлена для совместимости со старым ПО.
Возвращаемое значение всегда 0.
2. long UnitParam(LONG* param, DOUBLE* value);
Функция UNIT-сервера. Чтение параметра, пришедшего в программу из Unit.ocx.
param - номер пришедшего параметра;
value - значение пришедшего параметра.
Возвращаемое значение:
0 - успешное выполнение;
-32 - нет не прочитанных пришедших параметров.
3. long UnitWrite(long size, float * data, long param);
Функция UNIT-сервера. Посылка в Unit.ocx массива данных.
size - размер массива;
data - указатель на массмв;
param - номер параметра.
Возвращаемое значение:
0 - успешное выполнение;
-2 - ошибка при инициализации Unit.ocx;
-12 - нет процесса, принимающего массив;
-41 - ошибка при передаче массива;
-53 - размер меньше или равен 0;
-100 - нулевой указатель массива;
4. long WriteNet(...);
Функция, которая в существующей весии Unit.ocx ничего не делает. Оставлена для совместимости со старым ПО.
Возвращаемое значение всегда 0.
5. void IamActive();
Функция, которая в существующей весии Unit.ocx ничего не делает. Оставлена для совместимости со старым ПО.
6. long IsReady();
Функция UNIT-клиента. Функция проверяет наличие новых данных, пришедних от Unit.ocx. Предназначена для разработки UNIT-клиентов в средах разработки, которые не поддерживают работу с оконными сообщениями, например: Borland.
Возвращаемое значение:
0 - нет непрочитанных данных;
1 - есть непрочитанные данные.
7. long IsReadyParam();
Функция UNIT-сервера. Функция проверяет наличие новых параметров, пришедних от Unit.ocx. Предназначена для разработки UNIT-серверов в средах разработки, которые не поддерживают работу с оконными сообщениями, например: Borland.
Возвращаемое значение:
0 - нет непрочитанных параметров;
1 - есть непрочитанные параметры.
При разроботке программ, являющихся UNIT-сервером, в среде Borland для получения параметров следует по таёмеру выполнять следующий код:
if (IsReadyParam() == 1)
{
long param(0);
double value(0.);
if (UnitParam(¶m, &value) == 0)
{
// Обработка параметра с номером "param" и значением "value"
}
}
С уважением, отдел технической поддержки ООО "ЭТМС"