Как работать с "определенными" типами данных в 1С? #584746


#0 by Doomer
Опять же вопрос по работе с сокетами. С чтением я более или менее разобрался. Теперь думаю за отправку. Если мне нужно отправить переменную типа DWORD, а значение ее "1". Как мне в 1С создать такую переменную? Задача такая есть определенная структура которую я должен передать пакетом. В структуре все типы данных и байты и слово и двойное слово. Как мне создать такую структуру.
#1 by Doomer
Господа, может у кого есть пример работы с сокетами из 1С?
#2 by Doomer
Пока вижу только такой вариант. Брать число преобразовывать в строку. Каждый символ строки преобразовывать в число и добавлять в массив. Если длины массива хватать не будет то допишу нули в массив перед числом. Например надо wd из числа 69 получить. Делаем "69", потом массив: 6,9. Потом добавляем нули: 0,0,6,9. Может есть по проще способы?
#3 by МихаилМ
сокеты это не прикладное, а системное программирование а для этих целей есть внешние компоненты
#4 by H A D G E H O G s
Не понимаю проблемы автора.
#5 by Doomer
Мне нужно отправить например 4 байта. А я не знаю сколько памяти выделено под мою переменную в 1С.
#6 by vde69
используй COM объекты, по другому 1с не поддерживает явную типизацию, в 1с ВСЕ переменные имеют тип "неопределенный"
#7 by oleg_km
Если речь идет о ActiveX WinSock, то внимательно почитай справку: The SendData method syntax has these parts Part Description object Anobject expression that evaluates to an object in the Applies To list. data Data to be sent. For binary data, byte array should be used. Remarks When a UNICODE string is passed in, it is converted to an ANSI string before being sent out on the network. Т.е. можно бинарные данные отправить через COMSafeArray с типом VT_I1. Если отправляешь строку, она преобразуется в ANSI Соответственно прием: The GetData method syntax has these parts: Part  Description object Anobject expression that evaluates to an object in the Applies To list. data Where retrieved data will be stored after the method returns successfully. If there is not enough data available for requested type, data will be set to Empty. type Optional. Type of data to be retrieved, as shown in Settings. maxLen Optional. Specifies the desired size when receiving a byte array or a string. If this parameter is missing for byte array or string, all available data will be retrieved. If provided for data types other than byte array and string, this parameter is ignored. Settings The settings for type are: Description Constant String vbString Byte Array vbArray + vbByte
#8 by oleg_km
Вот пример из реально работающей 1С КонецПроцедуры
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С