На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела Visual Basic: Общие вопросы
Здесь обсуждаются вопросы по языку Visual Basic 1-6 (а так же по схожим языкам, как, например, PowerBASIC).
Вопросы по Visual Basic .NET (это который входит в состав Visual Studio 2002/2003/2005/2008+, для тех, кто не в курсе) обсуждаются в разделе .NET.

Обратите внимание:
1. Прежде чем начать новую тему или отправить сообщение, убедитесь, что Вы не нарушаете правил форума!
2. Обязательно воспользуйтесь поиском. Возможно, Ваш вопрос уже обсуждали. Полезные ссылки приведены ниже.
3. Темы с просьбой выполнить какую-либо работу за автора в этом разделе не обсуждаются. Студенты, вам сюда: ПОМОЩЬ СТУДЕНТАМ!
4. Используйте теги [ code=vba ] ...текст программы... [ /code ] для выделения текста программы подсветкой.
5. Помните, здесь телепатов нет. Формулируйте свой вопрос максимально грамотно и чётко: Как правильно задавать вопросы
6. Запрещено отвечать в темы месячной (и более) давности, без веских на то причин.

Полезные ссылки:
user posted image FAQ Сайта user posted image FAQ Раздела user posted image Кладовка user posted image Наши Исходники user posted image API-Guide user posted image Поиск по Разделу user posted image MSDN Library Online user posted image Google

Ваше мнение о модераторах: user posted image SCINER, user posted image B.V.
Модераторы: SCINER, B.V.
  
> передача данных пользовательского типа , через Winsock
    Как передать пользовательский тип данных от серрверного клиентскому приложению через винсок?

    это есть и на сервере и на клиенте:


    ExpandedWrap disabled
      'Тип обьектов схемы
      Public Type SXEMTYPE
      UnitLabelU_KK() As SXEMTYPE_KK
      UnitUnitKK_KK() As Long
      UnitIndexKK_KK() As Variant
      UnitAdrKK_KK() As Byte
      SerNUnit_KK() As String
      UnitLabel_Sw() As SXEMTYPE_Sw
      LabeTxt_Tx() As SXEMTYPE_Tx
      Line_NT() As SXEMTYPE_NT
      pArrow_Ar() As SXEMTYPE_Ar
      Count_KK As Long
      Count_Sw As Long
      Count_Tx As Long
      Count_NT As Long
      Count_Ar As Long
      End Type
       
       
      Public SendClSxem As SXEMTYPE

    передаю данные

    ExpandedWrap disabled
      wsClients(Index).SendData ID & "@" & SendClSxem & "@" & CLN_MESSAGE
    Сообщение отредактировано: Penumbra -
      ExpandedWrap disabled
        dim buff() as byte
          redim buff(1 to len(SendClSxem))
          senddata buff

      Для текста не прокатит. Нужен другой подход ;)
      Penumbra, догадаетесь сами?
        эээ, а как SendClSxem запихнуть в байтовый массив?

        п.с. максимум до чего я догадался так это записать SendClSxem As SXEMTYPE в бинарный файл, затем считать его в текстовую переменную txtTemp as string , затем переслать ее клиенту, затем уже у клиента txtTemp as string записать в файл а уж потом с бинарного файла прочитать в GetClSxem As SXEMTYPE :blink: :wacko:
        ну, дык, этож геморойно...
        Сообщение отредактировано: Penumbra -
          Цитата Penumbra @
          этож геморойно...

          Но мысль работает!!! Это один из вариантов.
            Цитата Black Star @
            Но мысль работает!!!

            это меня не сильно утешает :unsure:
            а какие другие варианты? и всетаки, как SendClSxem запихнуть в байтовый массив?
              Создать функцию, которая конвертирует структуру в строку, и комплементарную ей функцию. И передавать...
                Цитата Akina @
                Создать функцию, которая конвертирует структуру в строку, и комплементарную ей функцию. И передавать...


                Иии???
                Мне эта мысль пришла самая первая, но, если б я знал как это сделать, то не было бы этого топика :no-sad:
                в том-то и проблема что я НЕ знаю как структуру конвертнуть в строку, а потом обратно...
                  Penumbra, ну не все так радостно :)
                  Массив создаешь сразу... большой.
                  и копипастишь в него все составляющие....
                  типа
                  ExpandedWrap disabled
                      copymemory buff(x+0),varLONG1,4
                      copymemory buff(x+4),varLONG2,4
                      buff2=strconv(varSTRING,vbFromUnicode)
                      copymemory buff(x+8),buff2(0),len(varSTRING)

                  и т.д. и т.п.

                  Потом все это дело обратно :wacko:
                    Цитата Penumbra @
                    Иии???
                    Мне эта мысль пришла самая первая, но, если б я знал как это сделать, то не было бы этого топика
                    в том-то и проблема что я НЕ знаю как структуру конвертнуть в строку, а потом обратно...

                    И что же ты не можешь конвертировать в string? какой из типов? говори, не стесняйся... или проблема в том, как выпполнить конкатенацию конвертированных элементов структуры?
                    0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                    0 пользователей:


                    Рейтинг@Mail.ru
                    [ Script execution time: 0,0285 ]   [ 16 queries used ]   [ Generated: 24.04.24, 14:41 GMT ]