KnigaRead.com/
KnigaRead.com » Компьютеры и Интернет » Программирование » Валентин Озеров - Советы по Delphi. Версия 1.4.3 от 1.1.2001

Валентин Озеров - Советы по Delphi. Версия 1.4.3 от 1.1.2001

На нашем сайте KnigaRead.com Вы можете абсолютно бесплатно читать книгу онлайн Валентин Озеров, "Советы по Delphi. Версия 1.4.3 от 1.1.2001" бесплатно, без регистрации.
Перейти на страницу:

 AA_ERR_WINDOWCREATE = $201; { 513 – Невозможно создать окно }

 AA_ERR_DLGERROR = $202; { 514 – Ошибка диалога }

 AA_ERR_INVALIDSTATUS = $300; { 768 – Неверный статус }

 AA_ERR_BADDIBFORMAT = $301; { 769 – Плохой dib-файл }

 AA_ERR_BADFLIFORMAT = $302; { 770 – Плохой fli-файл }

 AA_ERR_UNRECOGNIZEDFORMAT = $303; { 771 – Нераспознанный формат }

 AA_ERR_NOSOUND = $304; { 772 – Звук не поддерживается }

 AA_ERR_NOTVALIDFORSCRIPTS = $305; { 773 – Неправильный сценарий }

 AA_ERR_INVALIDFILE = $306;     { 774 – Плохой дескриптор файла }

 AA_ERR_NOSCRIPTS = $307;       { 775 – Нет файлов-скриптов }

 AA_ERR_SPEED = $400;           { 1024 – Неверная скорость  }

 AA_ERR_LOOPS = $401;           { 1025 – Неверные циклы }

 AA_ERR_RPTSOUND = $402;        { 1026 – Неверный повтор звука }

 AA_ERR_PAUSE = $403;           { 1027 – Неверная пауза }

 AA_ERR_TRANSIN = $404;         { 1028 – Неверный переход }

 AA_ERR_TIMEIN = $405;          { 1029 – Неверный переход }

 AA_ERR_TRANSOUT = $406;        { 1030 – Неверное время перехода }

 AA_ERR_TIMEOUT = $407;         { 1031 – Неверное время перехода }

 AA_ERR_DELAYSND = $408;        { 1032 – Неверная задержка звука }

 AA_ERR_INVALIDTYPE = $409;     { 1033 – Неверный тип параметра }

 AA_ERR_DUPLICATENOTIFY = $500; { 1280 – Дублирование уведомления }

 AA_ERR_NOSWITCH = $600;        { 1536 – Отсутствие ключей в скрипте }

 AA_ERR_PARSELOOPS = $601;      { 1537 – Плохие циклы в скрипте }

 AA_ERR_PARSESPEED = $602;      { 1538 – Плохая скорость в скрипте }

 AA_ERR_BADRPTSOUND = $603;     { 1539 – Плохое повторение звука в скрипте }

 AA_ERR_PARSEPAUSE = $604;      { 1540 – Плохая пауза в скрипте }

 AA_ERR_PARSETRANS = $605;      { 1541 – Плохой переход в скрипте }

 AA_ERR_PARSEDELAYSND = $606;   { 1542 – Плохая задержка звука в скрипте }

 AA_ERR_TOOMANYLINKS = $607;    { 1543 – Слишком много ссылок }

 {

  dwFlags: integer; может быть любым из нижеперечисленных

  Используется в aaGetFile.

 }

 AA_GETFILE_MUSTEXIST = $1;

 AA_GETFILE_NOSHOWSPEC = $2;

 AA_GETFILE_SAVE = $4;

 AA_GETFILE_OPEN = $8;

 AA_GETFILE_USEDIR = $10;

 AA_GETFILE_USEFILE = $20;

 AA_GETFILE_SOUND = $40;

 AA_GETFILE_SCRIPT = $80;

 AA_GETFILE_ANIMATION = $100;

 {

  wMode: integer; Значения

  Используется в aaSave

 }

 AA_SAVE_IFMODIFIED = $1;

 AA_SAVE_AS = $2;

 AA_SAVE_CANCEL = $4;

 {

  Возможности

  Используется в aaGetCaps

 }

 AA_CAP_TIMER = 1;

 AA_CAP_SOUND = 2;

 AA_CAP_SCRIPT = 3;

 {

  Статусные сообщения анимации

  Используйте RegisterWindowMessage для получения номеров реальных сообщений.

 }

 AA_NOTIFY = 'AAPLAY Уведомление'; { Сообщение-уведомление }

 AA_STOP = 'AAPLAY Стоп';          { Стоп-сообщение }

 {

  Это посылается в первом слове lParam с сообщением AA_ERROR.

  Это указывает на возникшую ошибку

 }

 AA_BADPLAY = 1;   { Ошибка при попытке воспроизведения }

 AA_BADNOTIFY = 2; { Ошибка при попытке послать уведомление }

 AA_BADSCRIPT = 3; { Ошибка в сценарии при попытке }

                   { воспроизведения }


{ ========================================================================== }

unit TMediaPlayer)

procedure OpenAA;


private

 { Private declarations }

protected

 { Protected declarations }

public

 { Public declarations }

 AAParameters: AAPARMS;

 FlicHandle: AAHandle;

 PlayWinHandle: THandle;

 StatusWinHandle: THandle;

 CallbackWinHandle: THandle;

published

 { Published declarations }

end;


procedure Register;


{ Внешние вызовы AAPLAY.DLL }

function aaOpen : boolean;

procedure aaClose;

function aaGetCaps(wType: word) : word;

function aaLoad(lpzFileName: PChar; WinHnd: HWnd; wMode: word; x, y, wid, hght, orgx, orgy: integer): AAHandle;

function aaReLoad(hAa: AAHandle; lpzFileName: PChar; wMode, wMask: word) : boolean;

function aaUnload(hAa: AAHandle): boolean;

function aaPlay(hAa: AAHandle) : boolean;

function aaNotify(hAa: AAHandle; lPosition, lParam: longint) : boolean;

function aaCancel(hAa: AAHandle; lLoPos, lHiPos: longint) : word;

function aaStop(hAa: AAHandle) : boolean;

function aaPause(hAa: AAHandle) : boolean;

function aaPrompt(hAa: AAHandle; lpName: PChar) : boolean;

function aaGetParm(hAa: AAHandle; wType: word) : longint;

function aaGetParmIndirect(hAa: AAHandle; lpAp: AAPARMSPtr; wSize: word) : boolean;

function aaSetParm(hAa: AAHandle; wType: word; wValue1, lValue2: longint): AAHandle;

function aaSetParmIndirect(hAa: AAHandle; dwType: longint; lpAp: AAPARMSPtr; wMask: word): boolean;

function aaShow(hAa: AAHandle; bShow: boolean) : boolean;

function aaSound(hAa: AAHandle; device, ffile: PChar; wMode: word): boolean;

function aaGetFile(dwFlags: word; lpszPath: PChar; wBufLen: word; lpszDriver: PChar; wDrvLen: word) : integer;

function aaSave(hAa: AAHandle; wMode: word) : integer;


implementation


{ =========================================================================== }

procedure Register;

begin

 RegisterComponents('Samples', [TAAPlayer]);

end;


{ --------------------------------------------------------------------------- }

procedure TAAPlayer.OpenAA;

var

 FileSuffix, tempstr: string[12];

 a,b: integer;

begin

 { tempstr := ExtractFilename(AAPlayer.Filename); }

 { a := StrPos(tempstr,'.');

 if (a > 0) then begin

  b := a;

  while (b <= StrLen(tmpstr)) do begin

   FileSuffix := FileSuffix + StrUpper(tempstr[b]);

   b := b+1;

  end;

  if ((FileSuffix = '.FLC') or (FileSuffix = '.FLI')) then begin }

 { AutoEnable := False;

   EnabledButtons := [btRecord,btEject];

 }{ end;

 end;

}

end;


{ =========================================================================== }

{ Внешние вызовы 'AAPLAY.DLL' }

{$F+}

{ =========================================================================== }


{ --------------------------------------------------------------------------- }

function aaOpen : boolean; external 'AAPLAY';


{ --------------------------------------------------------------------------- }

procedure aaClose; external 'AAPLAY';

{

 ' AAOpen и AAClose в действительности не нужны, за исключением обработки

 ' ошибки в Windows, которая предохраняет освобождение библиотек в процедуре

 ' выхода Windows (Windows Exit Proc, WEP).

 '

 ' Поэтому мы используем AAClose для освобождения библиотек при закрытии

 ' последней задачей AAPlay DLL.

}


{ --------------------------------------------------------------------------- }

function aaGetCaps(wType: word) : word; external 'AAPLAY';

{

 ' Получение возможностей

}


{ --------------------------------------------------------------------------- }

function aaLoad(lpzFileName: PChar; WinHnd: HWnd; wMode: word; x, y, wid, hght, orgx, orgy: integer): AAHandle; external 'AAPLAY';

{

 ' aaLoad загружает анимацию.

 '

 ' Имя файла в lpzFileName

 ' и режим загрузки в wMode.

}


{ --------------------------------------------------------------------------- }

function aaReLoad(hAa: AAHandle; lpzFileName: PChar; wMode, wMask: word): boolean; external 'AAPLAY';

{

 ' aaReLoad загружает файл новый анимации

 ' "в дескриптор" старой анимации.

 '

 ' Уведомления теряются, но палитра и окно

 ' сохраняются.

}


{ --------------------------------------------------------------------------- }

function aaUnload(hAa: AAHandle): boolean; external 'AAPLAY';

{

 ' aaUnload выгружает загруженную анимацию.

 '

 ' Возвращается FALSE, если

 ' hAa не является дескриптором загруженной анимации.

}


{ --------------------------------------------------------------------------- }

function aaPlay(hAa: AAHandle) : boolean; external 'AAPLAY';

{

 ' aaPlay воспроизводит загруженную анимацию.

 '

 ' Возвращается TRUE, если после возврата aaPlay анимация не останавливается.

}


{ --------------------------------------------------------------------------- }

function aaNotify(hAa: AAHandle; lPosition, lParam: longint) : boolean; external 'AAPLAY';

{

 ' aaNotify позволяет извещать приложение о воспроизведении

 ' определенных кадров анимации.

 '

 ' lPosition -позиция, в которой должно происходить уведомление.

Перейти на страницу:
Прокомментировать
Подтвердите что вы не робот:*