![]() |
|
#1
|
|||
|
|||
![]() Доброе время суток!
![]() Помогите советом: нужно видео файл разместить в проекте, т.е. чтобы EXE-шник содержал видео файл, а не подгружал его из указанного места. ![]() По-моему, подошел бы компанент на подобии ImageList, только для видео. Если кто-то знает, где его найти или как еще можно решить данную задачу - пишите!!! ![]() P.S. желательно решение в рамках Delphi 5. |
#2
|
||||
|
||||
![]() а зачем тебе ImageList???
Просто засовывай видео в res файл, а его в свою очередь в прогу. Проще некуда) |
#3
|
|||
|
|||
![]() Хорошо, что всё так просто. Вот только знать бы как это сделать
![]() ![]() |
#4
|
||||
|
||||
![]() Да пжлста любезный, В каталоге \DELPHI\BIN имеется утилита коммандной строки, BRCC.EXE, позволяющая создавать из файлов, содержащих изображения/иконки и т.д., RES-файлы.
Используя Блокнот, создай файл определения ресурса (Resource Definition) (текстовый) с именем, скажем, FUCK.RC (с обязательным расширением RC). Размести, каждую на отдельной строке, ссылки на изображения, иконки, (или твое видео), которое ты хотел включить в RES-файл, например: IDR_AVILOGO AVI "Pornuha.avi" После просто перенеси твой fuck.rc на brcc.exe, появится файл fuck.res В твоём модуле Delphi добавь после строки {$R *.RES} строку {$R fuck.RES}, но сначало кинь fuck.res в директорию с исходниками твоей проги. А для вызова видео из рес файла, в проге, используй например: Animate1.ResName := IDR_AVILOGO; Animate1.Active:=true; |
#5
|
||||
|
||||
![]() упс. еще Animate1.ResName := IDR_AVILOGO; заключи в ковычки
'IDR_AVILOGO'; |
#6
|
|||
|
|||
![]() Попробовал ... что-то пока не получается: Animate ругается на avi-шку, говорит что не может открыть файл
![]() |
#7
|
||||
|
||||
![]() Есть еще один вариант.
Тебе надо выдрать ресурс во временный файл, а уж потом воспроизвести его например через TMediaPlayer. Выдрать можно так: Var a:TResourceStream; b:TMemoryStream; Begin A:=TResourceStream.Create(hInstance,'Name','Type') ; B:=TMemoryStream.Create; B.CopyFrom(A,A.Size); B.SaveToFile('FileName here.avi'); a.free; b.free; end; |
#8
|
||||
|
||||
![]() Чуть не забыл. Не забудь удалить извлеченный файл после использования.
|
#9
|
|||
|
|||
![]() Спасибо за совет!
К сожалению, данный способ не подходит - нужно, чтобы всё было в одном файле (без "следов" ![]() |