powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Передача масивов через Socket
11 сообщений из 11, страница 1 из 1
Передача масивов через Socket
    #36963133
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем доброго дня !

Вопрос.
Имеем некий массив (пусть даже одномерный)
Каким образом можно его целиком (не в отдельности по элементам !)
передать серверу через Socket ?

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Private Sub Command10_Click()
Dim param As String
Dim strFriends( 6 ) As String
      
strFriends( 0 ) = "Bianca"
strFriends( 1 ) = "Jeana"
strFriends( 2 ) = "Sam"
strFriends( 3 ) = "Jenna"
strFriends( 4 ) = "Erin"
strFriends( 5 ) = "Carolyn"
strFriends( 6 ) = "Kate"

o.SendData strFriends & vbCrLf ?????????? Не знаю ...

End Sub

Сейчас использую OstroSoft Winsock Component (OSWINSCK.dll)
...
Рейтинг: 0 / 0
Передача масивов через Socket
    #36963142
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValeriuКаким образом можно его целиком (не в отдельности по элементам !)
передать серверу через Socket ?
в чем проблема его сериализовать?
...
Рейтинг: 0 / 0
Передача масивов через Socket
    #36963146
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я пробовал в отдельности по элементу -можно
А вот вся кухня вместе - нет ...
...
Рейтинг: 0 / 0
Передача масивов через Socket
    #36963149
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Можно на примере любого socketa, думаю большой разницы не будет.

Спасибо.
...
Рейтинг: 0 / 0
Передача масивов через Socket
    #36963340
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Причем тут сокет. Массив сериализуйте перед отправкой
Код: plaintext
1.
2.
For i =  0  To  6 
  k=k+strFriends(i)+","
Next
...
Рейтинг: 0 / 0
Передача масивов через Socket
    #36963607
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я понял, Вы предлагаете использовать функцию Join ? ... :)

myFriends = Join(strFriends, ", ")

Это мне не подходит .
Должен же быть другой метод ...

Спасибо.
...
Рейтинг: 0 / 0
Передача масивов через Socket
    #36963643
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если строка содержит например:
(или другие комбинации где содержатся те же разделители ?):

Код: plaintext
1.
strFriends( 0 ) = "Bianca,Test1,Test2,Тест3"
strFriends( 1 ) = "Jeana,Test1,Test2,Тест3"

Вот что нашел

Код: plaintext
1.
2.
3.
4.
5.
6.
Option Explicit
Dim D2Array( 5 ,  5 ) As Byte

Private Declare Sub CopyMemory Lib "KERNEL32" _
                    Alias "RtlMoveMemory" (hpvDest As Any, _
                                           hpvSource As Any, _
                                           ByVal cbCopy As Long)



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Private Sub tcpClient_Connect()
  ' send the array
  Dim Arry( 35 ) As Byte
  
  CopyMemory Arry( 0 ), D2Array( 0 ,  0 ), UBound(Arry) +  1 
  ' tcpClient.SendData D2Array ' only sends 1st column
  tcpClient.SendData Arry ' sends all data
  
End Sub

Как прикрутить ?
...
Рейтинг: 0 / 0
Передача масивов через Socket
    #36963671
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ValeriuЯ понял, Вы предлагаете использовать функцию Join ? ... :)
JOIN есть не везде, а среду вы не указали

ValeriuЭто мне не подходит .
почему?

ValeriuА если строка содержит например:
это все несложно решается, например эскейп-символами

однако я не знаю, почему это вам не подходит
...
Рейтинг: 0 / 0
Передача масивов через Socket
    #36963772
Valeriu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
однако я не знаю, почему это вам не подходит

Серверу, которому я посылаю данные, должно быть понятно,
что это простая строка (длинная Or короткая ) или массив строк ...
...
Рейтинг: 0 / 0
Передача масивов через Socket
    #36963825
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Valeriuоднако я не знаю, почему это вам не подходит

Серверу, которому я посылаю данные, должно быть понятно,
что это простая строка (длинная Or короткая ) или массив строк ...
Вы ни слова не сказали про сервер, который будет принимать эти данные.
Откуда ж нам знать, в каком формате он примет данные.
...
Рейтинг: 0 / 0
Передача масивов через Socket
    #36965452
UNDEF_unnamed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Передача масивов через Socket
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]