2017-02-04 7 views
0

Ну в C# это будет выглядеть так:Как определить массив байтов в VB6 и отправить его с Winsock

Byte[] ulaznipodaci = new Byte[] { 0x08, 0x3F, 0x20, 0x03, 0x00, 0x00, 0x05, 0x00 }; 
sck.Send(ulaznipodaci); 

Мне нужен такой код в VB6. Я пробовал:

Dim ulaznipodaci() As Byte 
ulaznipodaci = Array(&H8, &H3F, &H20, &H3, &H0, &H0, &H5, &H0) 
Winsock2.SendData ulaznipodaci 

Но этот код дает мне ошибку на линии ulaznipodaci = Array(&H8, &H3F, &H20, &H3, &H0, &H0, &H5, &H0)

говоря: Запуск ошибки времени «13»: Несоответствие типа.

Я искал google, но ничего не смог найти. Пожалуйста, помогите, я новичок в vb6. Спасибо заранее.

+0

Это о другом проекте бота игра-плутовки, не так ли? – Bob77

ответ

1

В VB6, вы должны определить границы вашего массива, а затем заполнить каждый элемент отдельно:

Dim ulaznipodaci(7) As Byte 
'// VB6 array is zero based unless you specify lower to upper bounds 

ulaznipodaci(0) = &H8 
ulaznipodaci(1) = &H3F 
ulaznipodaci(2) = &H20 
ulaznipodaci(3) = &H3 
ulaznipodaci(4) = &H0 
ulaznipodaci(5) = &H0 
ulaznipodaci(6) = &H5 
ulaznipodaci(7) = &H0 

Если позже вам нужно добавить больше деталей:

ReDim Preserve ulaznipodaci(8) 

ulaznipodaci(8) = &H0 
0

.. или к примеру хранить в виде строки, а затем прочитать в цикле

St =»& Н8, & H3F, & Н20, & Н3, & Н0, & Н0, & Н5, & Н0"

для г = 1 до N

поз = (I-1) * 6 'poition & ulaznipodaci (я) = середина (St , поз, 4) "нам не нужны„“и пространство

следующая