Синтаксис

FLOAT RegisterNetObject(STRING Object, STRING protocol, STRING address, FLOAT port, FLOAT flags)


Описание

Функция позволяет соединить переменные одного имиджа на локальной машине c переменными имиджа на удаленной машине.


Параметры

Object        Определяет соединяемый имидж.

Protocol        Определяет тип сетевого протокола. Возможные значение (“TCP/IP”, “IPX”, “NETBEUI”). Пока поддерживается только “TCP/IP”

address        Адрес машины. Если этот имидж выступает в качестве сервера, то необходимо указать адрес локальной машины или пустую строку. Для клиента необходимо указывать точный адрес удаленного сервера. Для IP адресов адрес может быть как буквенным: “stratum.pstu.ac.ru” так и цифровым “193.233.103.25”.

Port        для TCP/IP протокола определяет номер IP порта.

Flags        Комбинация следующих флагов:


 0x01        Имидж является сервером.

 0x02        Имидж посылает значения своих переменных другим.

 0x04        Имидж асинхронно получает данные по сети.

 0x08        Имидж пересылает значения переменных только при их изменении. Иначе данные посылаются на каждом шаге.

 0x8000        Повторная регистрация имиджа на передачу данных на другую машину.


Возвращаемое значение

Функция возвращает 1, в случае успеха и 0, в противном случае.


Примечание

 В настоящей версии поддерживается только TCP/IP протокол.

 Перед тем как осуществлять соединение, необходимо запустить имидж сервер и только потом подключаться клиенту.

 Имидж, рассылающий значения своих переменных, может передавать свои переменные сразу многим имиджам. При этом, если имидж является сервером, то это осуществляется автоматически при каждом подключении клиента имиджа на другой машине. Для клиента надо пользоваться повторным вызовом этой функции.

 При установлении связи Stratum проверяет тип связываемых имиджей и при их несовпадении разрывает установленную связь. Под совпадением типов подразумевается одинаковое количество переменных и эквивалентность переменных с одинаковыми порядковыми номерами.


Пример


// Сервер

FLOAT send1,send2,send3,send4,send5

if(not(ret))

ret:=RegisterNetObject("","TCP/IP","193.233.103.23",5000,3)

endif


// Клиент

FLOAT send1,send2,send3,send4,send5

if(not(ret))

ret:=RegisterNetObject("","TCP/IP","193.233.103.23",5000,0)

endif


см. Путь в имени объектаpath

Created with the Personal Edition of HelpNDoc: Free PDF documentation generator