Форум: "Базы";
Текущий архив: 2006.07.30;
Скачать: [xml.tar.bz2];
ВнизКак загрузить из блоба через TStream Найти похожие ветки
← →
Antonyan (2006-05-19 19:11) [0]Уважаемые мастера !
Вопрос в следующем. Использую Yaffil (клон Interbase). Моя программа строится следующим образом. Есть маленький модуль на машине клиента и именем и паролем. В базе на серваке в блобах хранятся разные модули - exe файлы. В зависимости от того, как предствился клиент, из блоба запускается тот или иной ехе файл. Сделано тупо, так как сначала этот файл сохраняется на машине клиента, а потом запускается. Как сделать так чтобы этот ехе грузился непосредственно в память машины клиента, не используя жесткий диск, через TStream. Никак что то не доеду.
Заранее благодарен
← →
Johnmen © (2006-05-19 20:33) [1]Решения не найдёшь...
← →
Antonyan (2006-05-19 21:18) [2]Сомневаюсь, что это невозможно. Предлагаю порассуждать. Может есть специализированные компоненты для особо тяжелых случаев ?
← →
Johnmen © (2006-05-20 01:09) [3]Порассуждать можно. Только бесполезно и неконструктивно, т.е. толку ноль.
← →
Antonyan (2006-05-20 15:29) [4]Вообще покапался и нашел решение делать это через OleContainer. Кому нибудь интересно как ?
← →
atruhin © (2006-05-20 15:34) [5]
> Кому нибудь интересно как ?
Нет. Вроде все и так знают :)
← →
Antonyan (2006-05-20 18:03) [6]Всем спасибо
← →
Johnmen © (2006-05-20 19:45) [7]
> Antonyan (20.05.06 15:29) [4]
>
> Вообще покапался и нашел решение делать это через OleContainer.
> Кому нибудь интересно как ?
Мне интересно.
← →
Antonyan (2006-05-25 23:57) [8]надеюсь модераторы не обидятся за прямую ссылку ?
http://www.cracklab.ru/pro/faq.php?pg=478
← →
atruhin © (2006-05-26 04:42) [9]
> надеюсь модераторы не обидятся за прямую ссылку ?
Ну и как это связанно с твоим вопросом? Ты спрашивал о запуске программы из памяти, причем здесь чтение блоба? Вообще где то были хакерские способы такого запуска, но на то они и хакерские.
← →
Johnmen © (2006-05-26 09:01) [10]>Antonyan
Я тоже что-то не нашёл там, как "из блоба запускается тот или иной ехе файл" :)))
← →
antonyan (2006-05-26 14:00) [11]Чтение из блоб-поля в OleContainer
var S: TStream;
begin
if not FIBDataset1BLOBFIELD.IsNull then
begin
S:=FIBDataset1.CreateBlobStream(FIBDataset1BLOBFIELD, bmRead);
try
OleContainer1.LoadFromStream(S);
OleContainer1.DoVerb(ovShow); //Запускает содержимое контейнера выполняться
finally
S.Free
end;
end;
end;
← →
antonyan (2006-05-26 14:02) [12]Таким образом мы грузим исполняемый файл из блоба в контейнер использую процесс в памяти, а затем запускаем содержимое выполняться.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2006.07.30;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.013 c