Страница 1 из 1

Добавлено: 28 Август 2004, 15:11
Гость
Подскажите пожалуйста кто знает как проиграть AVI файл. Вродебы как то можно это сделать с помощью ACX ActiveMovie. Если можно пример использования.
Написал: Mihhha(126)

Добавлено: 31 Август 2004, 14:36
Гость
Привет!
Попробуй так:

Код: Выделить всё

 PROGRAM

 MAP
   END
Fname  string(75)
RunStr  string(255)
   CODE

   IF NOT FileDialog('Выберите файл для просмотра',Fname,'AVI Files ! *.avi',10H)
     RETURN
   END
!NB В следующей строке параметр RunDll регистрозависим. Напр., Rundll не катит
   RunStr = 'rundll32.exe amovie.ocx,RunDll /play /close ' & Fname
   RUN(CLIP(RunStr),1)
Можно RUN-ом вызвать Media Player, но закрывать его нужно будет ручками.
Зайди к велосипедистам
http://www.softvelocity.com/faq/faq.htm
- там в разделе API есть пример с использованием API - функций.

С уважением,
mit

Добавлено: 31 Август 2004, 20:39
Гость
Как-то сложно. Просто разместить на экране 32-битный OCX (например, ?Movie)

А потом ?Movie{Prop:Create}='AMOVIE.ActiveMovieControl.2'
?Movie{'FileName'}=Имяфайла
?Movie{'Run'}
Недостаток в том, что размер контрола зависит от фильма
Другой способ - использовать функцию MCISendString.

Например, как воспроизвести фильм на полном экране

Код: Выделить всё

mciSendString(*CSTRING,*CSTRING,USHORT,USHORT),ULONG,PASCAL,RAW,PROC,NAME('mciSendStringA') 

FileName   Cstring(256)
MCICommand  Cstring(256)
MCIReturn   Cstring(256) 

        MCICommand='stop movie'
        MCISendString(MCICommand,MCIReturn,128,0)
        MCICommand='close movie'
        MCISendString(MCICommand,MCIReturn,128,0)
        MCICommand='open "'&filename&'" alias movie'
        MCISendString(MCICommand,MCIReturn,128,0)
        MCICommand='play movie fullscreen'
        MCISendString(MCICommand,MCIReturn,128,0)
... 
---------------------------------------
C уважением,
Юрий Философов,
Главный программист
Корпорация "Диполь", Саратов
E-mail yufil@tacis-dipol.ru (служ)
yufil@mail.ru (дом)
ICQ#75924439

Написал: ClaList(2)