0 / 0 / 0
Регистрация: 09.09.2008
Сообщений: 13

Проблема со Stream-объектом

09.09.2008, 12:26. Показов 1148. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ситуация: есть Stream-объект. Сначала в него вливается байт-эррей. Затем тип переставляется на 'текст', и из потока выходит хтмл-код.
Проблема: debug.print все прекрасно показывает, именно тот самый ХТМЛ-код. Но как только я использую текстовое поле, или MsgBox, текст куда-то девается.
вот мoй код:
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
    Dim report As testDesigner
  
    Set report = New testDesigner
    
    Dim myBArray As Variant
    Dim myHRMLExport As ActiveReportsHTMLExport.HTMLexport
    Set myHRMLExport = New ActiveReportsHTMLExport.HTMLexport
    
    Dim objStream As Stream
    Dim varA As Variant
    Dim bytA() As Byte
    Dim i As Long
    Dim strBytes As String
    
    
    report.Run
    myHRMLExport.ExportStream report.Pages, myBArray
    
    'Instantiate and Open Stream
    
    Set objStream = New Stream
    objStream.Open
    
    'Load an array of bytes 
    ReDim bytA(UBound(myBArray))
 
    For i = 1 To UBound(myBArray)
        bytA(i) = CByte(myBArray(i))
    Next
    
    'Write the buffer to the binary stream and display
    objStream.Position = 0
    objStream.Type = adTypeBinary
    objStream.Write bytA()
    'objStream.SetEOS
    
    'Text1.Text = 'Binary after write:'
    'Text1.Text = objStream.Read
    'Text1.Text = objStream.Size
    
    
    'Switch back to a text stream and display
    'Debug.Print 'Translated back:'
    objStream.Position = 0
    objStream.Type = adTypeText
    objStream.Charset = 'Windows-1252'
    
    'Debug.Print objStream.ReadText '!!!!!!!! Poluchaetsja !!!!
    MsgBox (objStream.ReadText)     '!!!!!!!! Ne poluchaetsja !
    
    Text1.Text = objStream.Size
    'Text1.Text = objStream.ReadText '!!!!!!!! Ne poluchaetsja !
Есть у кого-нибудь идеи, в чем тут дело?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.09.2008, 12:26
Ответы с готовыми решениями:

Как работать с объектом Stream?
Хотел бы получить консультацию по работе со Stream - что 'прицепить'(ссылка)?, где почитать? и т.д. Если доводилось писать Stream-объект...

Проблема с COM-объектом
Есть некий COM-объект, возвращающий некий текст. Текст хочется немножко отредактировать, а затем сохранить в файл (выбранный...

Проблема с объектом Range
Sub ОчисткаДиапазоновНаВсехЛистах() ЧислоЛистов = Worksheets.Count For i = 1 To ЧислоЛистов - 1 Set sh = Worksheets(i) ...

4
0 / 0 / 0
Регистрация: 09.09.2008
Сообщений: 13
09.09.2008, 16:38  [ТС]
Oшибкa нaйденa. Хoрoшo бы oбъяснение.
При перегoнке из вaр-ерея в бaйт-ерей я терялa первый знaк.
Code
1
2
3
4
5
6
7
8
9
10
11
Bylo tak: 
 
    For i = 1 To UBound(myBArray)
        bytA(i) = CByte(myBArray(i))
    Next
 
A nado:
 
    For i = LBound(myBArray) To UBound(myBArray)
        bytA(i) = CByte(myBArray(i))
    Next
Чтo ли у первoгo знaкa естъ кaкие-тo специaлъные функции? Пoчему oн тaк вaжен oкaзaлся для всегo пoтoкa?
0
0 / 0 / 0
Регистрация: 03.02.2008
Сообщений: 24
09.09.2008, 19:22
Массивы в VB по умолчанию нумеруются с нуля! Что есть весьма удобно в большинстве случаев! В С++ Только так!
0
0 / 0 / 0
Регистрация: 09.09.2008
Сообщений: 13
09.09.2008, 20:10  [ТС]
С нуля то оно да.
А вот почему у потока запор без этого первого элемента начинался? Ну и печатал бы все со второго? Вот что интересно, не массив, а поток вел себя странно.
0
0 / 0 / 0
Регистрация: 03.02.2008
Сообщений: 24
09.09.2008, 20:23
А вот по поводу потока ответить не могу!
Хотел бы сам получить консультацию по работе со Stream
Если не затруднит - просветите!
Буду рад получить что-нибудь по адресу
ansen@ufei.ukrsat.com
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.09.2008, 20:23
Помогаю со студенческими работами здесь

Проблема с объектом JSProxy
Возникает такая проблема: при отображении страниц сайта появляется ошибка "не могу создать объект JSProxy". При нажатии кнопки...

Проблема с объектом string
Всем привет! Таким образом передаю текст объекту string: string str ; sscanf( "cyberforum.ru", "%s" , str.data() ); cout...

Gtx 1070 Palit Super Jet Stream проблема
Здравствуйте! Столкнулся с непонятной проблемой. Собрал новый компьютер: I5 8400, 8gbx2 ram, Gtx 1070 Palit Super Jet Stream, БП 650w. ...

Удалить из Stream-а все вещественные числа, не используя дополнительных Stream-ов
Здравствуйте. Есть следующая задача: В поток записана последовательность целых и вещественных чисел в символьном виде через пробел....

Как создать картинки используя bitmap.Save(Stream stream, .)
Я сохраняю все картинки так: output = bmp; output.Save($"Img{Convert.ToString(i)}.png"); Это в конце цикла. Но как выяснилось,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

Новые блоги и статьи
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита, которое может. . .
Команды "Заполнить" и "Очистить" на форме документа
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". На примере нетипового документа разработанного в конфигурации КА2. В качестве источника данных указан регистр накопления, в который записываются данные о. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru