![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| gray_k |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1015 Регистрация: 9.1.2003 Где: Москва Репутация: нет Всего: 22 |
Есть база на IB/FB. Клиент на C++ Builder (или Delphi - в данном случае не важно).
В базе хранятся файлы в битовом поле BlobField (.txt, .xls, .doc, .jpg). В клиенте необходимо иметь возможность просматривать эти файлы. Я пробовал делать через OleContainer таким образом: TMemoryStream *ms = new TMemoryStream; MyQuery->FieldByName("MyFile")->SaveToStream(ms); Ole->LoadFromStream(ms); delete ms; На строке с LoadFromStream вываливается ошибка - Stream read error. Если сделать так: TBlobStream *ms = new TBlobStream(((TBlobField*)qu->FieldByName("FILE")), bmRead); Ole->LoadFromStream(ms); delete ms; то вываливается ошибка Invalid class typecast на строчке с new. Никто не сталкивался с таким вопросом? -------------------- С уважением. Gray. |
|||
|
||||
| gray_k |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1015 Регистрация: 9.1.2003 Где: Москва Репутация: нет Всего: 22 |
Извините, вместо строчки:
MyQuery->FieldByName("MyFile")->SaveToStream(ms); конечно надо писать: ((TBlobField*)qu->FieldByName("MyFile"))->SaveToStream(ms); -------------------- С уважением. Gray. |
|||
|
||||
| Medved |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 7209 Регистрация: 15.9.2002 Где: Kazakhstan, Astan a Репутация: нет Всего: 154 |
Перенесено из раздела БД
-------------------- |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |