Stream Для Zip-файлов. Help.

susinmn

Well-Known Member
16.10.2007
529
8
33
Саратов
#1
Нужно создать zip-архив и передать его побайтно с помощью web-сервиса.

zip-архив создаю, открывается нормально.
далее пытаюсь передать архив побайтно
Код:
Dim uploadFile As New XSD_BASE64BINARY

Set Stream = s.CreateStream
If Not Stream.Open(zipFilePath, "binary") Then
....
End If

Call uploadFile.setValueFromNotesStream(Stream)
при принятии, архив не открывается.
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 435
351
homepage.mac.com
#2
есть два предположения:
-обратно, из бэйз64, никто не преобразует B)
-"как обычно" - в ЛС криво реализовано
 

susinmn

Well-Known Member
16.10.2007
529
8
33
Саратов
#3
есть два предположения:
-обратно, из бэйз64, никто не преобразует B)
-"как обычно" - в ЛС криво реализовано
маленькие zip-файлы открываются, большие нет B)
причем при передачи не заархивированного *большого* файла, все ровно.
чудеса...
 

susinmn

Well-Known Member
16.10.2007
529
8
33
Саратов
#4
вот где чудеса:
Код:
Call uploadFile.SetValueFromNotesStream(Stream)
Set tmpStream=uploadFile.Getvalueasnotesstream()

Stream - ["Binary", True, 1162710, 1162710, False]
tmpStream - ["Unicode", True, 313036, 313036, False]
 

susinmn

Well-Known Member
16.10.2007
529
8
33
Саратов
#5
Вот с такого толкача, вроде бы, завелся...тестируем...

Код:
outString=""

Do
Set OutStream = s.CreateStream
buffer = Stream.Read(32767)
Call OutStream.Write(buffer)
Call uploadFile.SetValueFromNotesStream(OutStream)
outString=outString+uploadFile.Getvalueasstring()
Loop Until Stream.IsEOS

Call uploadFile.Setvaluefromstring(outString)