Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > преобразование String в IPictureDisp


Автор: NeoRus 24.11.2008, 14:35
Как преобразовать переменную полученую через Winsock (String) в IPictureDisp, т.е. чтобы можно было ставить в PictureBox.Picture ?

Автор: Akina 24.11.2008, 15:02
Используя преобразование, противоположное тому, которое было неа стороне отправителя. 

Автор: NeoRus 24.11.2008, 18:41
На стороне отправителя преобразования небыло, там итак отправляется, а когда получатель получает эту картинку, то вылетает ошибка

Автор: Akina 24.11.2008, 18:58
Цитата(NeoRus @  24.11.2008,  19:41 Найти цитируемый пост)
На стороне отправителя преобразования небыло

А каким кодом отправитель получает картинку и отправляет криенту?

Автор: NeoRus 24.11.2008, 19:13
Передаёт
Код

I.SendData Picture1.Picture

Получает
Код

Private Sub I_DataArrival(ByVal bytesTotal As Long)
Dim strData As IPictureDisp
   I.GetData strData
   Picture1.Picture = strData

End Sub

Автор: Akina 24.11.2008, 21:34
Цитата(MSDN)

At run time, the Picture property can be set to any other object's DragIcon, Icon, Image, or Picture property, or you can assign it the graphic returned by the LoadPicture function.
IPictureDisp не относится ни к одному из них.

Для проверки - попробуй перед посылкой скопировать данные с массив байтов, и получать в массив байтов (winsock.getdata rcv(),vbByte). Чтобы убедиться, что приходит ровно то, что отправляется.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)