Форум: "Начинающим";
Текущий архив: 2008.02.10;
Скачать: [xml.tar.bz2];
ВнизTShockwaveFlash. Как записать в поток? Найти похожие ветки
← →
Артем (2008-01-08 05:17) [0]Господа, не могу разобраться как записать в поток объект TShockwaveFlash???
var
OS:TOleStream;
Strm:IStream;
begin
OS:=TOleStream.Create(Strm);
flash1.Movie.savetostream(OS);
end;
Не хочет :( Что не так делаю?
← →
Артем (2008-01-08 06:14) [1]Нет, это ерунда то, что пытался выше. Вот пробую:
procedure TForm1.Button2Click(Sender: TObject);
var
Stg:IStorage;
OS:TOleStream;
Strm:IStream;
swf:TFileStream;
s:string;
SwfFileSize: Integer;
begin
s:="d:\test.swf";
swf:= TFileStream.Create(S, fmOpenRead or fmShareExclusive);
SwfFileSize:=swf.Size;
OleCheck(StgCreateDocfile("d:\Testing.stg",STGM_CREATE or STGM_READWRITE or STGM_SHARE_EXCLUSIVE ,0,Stg));
OleCheck(Stg.CreateStream("Testing",STGM_READWRITE or STGM_SHARE_EXCLUSIVE,0,0,Strm));
OS:=TOleStream.Create(Strm);
os.writebuffer(swf,SwfFileSize);
OS.free;
Strm:=nil;
Stg:=nil;
swf.Free;
end;
Задача такая: записать SWF-файл в хранилище IStorage. Где ошибка?
← →
Артем (2008-01-08 06:20) [2]Выдает ошибку "не верный указатель". А потом, что не может открыть "d:\test.swf". Размер этого файла 19 метров...
← →
Артем (2008-01-08 19:42) [3]Коллеги, не могу справиться, нужна помощь. Где ошибка во втором листинге?
← →
fics © (2008-01-08 19:54) [4]
> Артем
> Выдает ошибку "не верный указатель". А потом, что не может
> открыть "d:\test.swf". Размер этого файла 19 метров...
Слеш наоборот поставь
← →
Артем (2008-01-08 20:11) [5]Зачем наоборот-то? :) Вроде правильно.
В любом случае не помогает.
← →
fics © (2008-01-08 20:26) [6]
> Артем
Да тупанул, показалось что не правильно.
← →
Артем (2008-01-08 20:42) [7]Сутки мучаюсь - никак не могу победить. Кто-нибудь подскажет как записать SWF-файл в хранилище типа IStorage?
Что делаю не так?
← →
Артем (2008-01-08 21:12) [8]Пытаюсь через Memo - сначало в него содержимое SWF файла, а потом в хранилище. Ни фига не помогает. Записывается вот такая ерунда в 9 байт: "FWSуDрЂ"
КОД:s:="d:\test.swf";
swf:= TFileStream.Create(s, fmOpenRead);
memo3.lines.LoadFromStream(swf);
swf.free;
OleCheck(StgCreateDocfile("d:\Testing.stg",STGM_CREATE or STGM_READWRITE or STGM_SHARE_EXCLUSIVE ,0,Stg));
OleCheck(Stg.CreateStream("SWF",STGM_READWRITE or STGM_SHARE_EXCLUSIVE,0,0,Strm));
OS:=TOleStream.Create(Strm);
memo3.lines.SaveTOStream(OS);
OS.free;
Strm:=nil;
Stg:=nil;
end;
← →
Артем (2008-01-09 00:16) [9]Проблему решил. Топик закрыт.
← →
Serg1984 (2008-01-21 03:38) [10]1
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.02.10;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.046 c