Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.10;
Скачать: CL | DM;

Вниз

Добавление объекта OLE в MS ACCESS   Найти похожие ветки 

 
Doom ©   (2003-03-20 08:19) [0]

Поммогите разобраться с такой проблемой.

Упрощенно задача такая:
Есть база, предназначенная для использования в ACCESS,
Delphi применяется для автоматизации следующей задачи:
В базе есть 2 таблицы (остальные здесь не важны)
1. "Папки" с полем "ИмяПапки" : тип-Текстовый
// здесь хранятся записи в виде "c:\Work", "d:\Work" и т.п.
2. "Документы" с полями
1. "ИмяДокумента" : текстовый // сюда заносится полное имя файла
2. "Документ" : тип - Поле объекта OLE // сюда вносится его содержимое

В таблицу "Документы" нужно добавить имена и содержимое всех файлов,
найденных во всех папках таблицы "Папки".

Полные имена всех файлов во всех папках в таблицу внести удается, а вот потом....

Вопрос вот в чем : Как, зная имя файла, добавить его как OLE в поле "Документ" ?


 
DOOMin   (2003-03-20 11:46) [1]

из Дельфи я не понял как это сделать. Пытался, но при записи там отличаются форматы (смотрел по дампу). Но можно использовать OLE поле как BLOB. Ты тогда создаешь FileStream на основе своего документа и преобразуя в BLOBStream записываешь в поле. Код работает, но в самом access ты увидишь в таблице надпись "двоичные данные" и соответственно вызвать из access word двойным щелчком по полю не получится, только можно снова из программы вычитать это поле, сохранить во временный файл и запустить word. может кто-то знает другой способ, был бы рад ознакомится


 
Doom ©   (2003-03-20 12:18) [2]

Такое решение конечно не годится.
С этой базой работать будут в ACCESS
а как это сделать другими средствами (Visual Basic подойдет вполне)

p.s. Просьба за упоминание ВАСИКА веточку не убиватьт ):::


 
Doom ©   (2003-03-20 14:59) [3]

Мастера !!!
Неужели никто не знает и не поделится, как заносить OLE в поле???


 
Serginio   (2003-03-20 17:10) [4]

Работай через Stream Оле объекта. Он поддерживает LoadFromStream и SaveToStream либо через PersistStream через который на самом деле и работают предыдущие 2 метода.



Страницы: 1 вся ветка

Текущий архив: 2003.04.10;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.014 c
7-30627
AGGRESSOR
2003-02-04 15:08
2003.04.10
Объем видеопамяти


8-30476
Lestat
2003-01-05 23:38
2003.04.10
Как в tcanvas перерисовывать отдельные части экрана.


1-30333
Intell
2003-03-30 14:35
2003.04.10
MouseMove в DriveComboBox?


3-30216
phantom2040
2003-03-24 08:20
2003.04.10
Помогите с набивкой таблицы


3-30242
TohaNik
2003-03-20 18:35
2003.04.10
Добавление и удаление строк в dxDBGridPickColumn.Items