Курсовая работа: Програма для анімації музичних творів
call [edx+ адреса метода в таблиці ], хендл інтерфейсу об’єкта, параметри
Для деяких методів (наприклад, Speak) необхідно виділяти системну область пам’яті. Пам’ять з програми користувача для них не підходить. Для цього існує функція SysAllocString, яка резервує фрагмент системної пам’яті і одразу ж копіює в нього рядок з пам’яті користувача, який закінчується двома нулями. Після використання цей фрагмент знищується за допомогою функції SysFreeString, параметром якої є адреса цього фрагменту.
Всі керуючі дії для об’єктів ActiveX необхідно передавати в юнікодах. Для перетворення рядка в юнікод в програмі використана функція MultiByteToWideChar.
Постановка задачі
Нашою метою є скласти програму для анімації музичних творів на мові асемблер за допомогою об’єкта ActiveX - Microsoft Agent . Завантажити його можна з сайту Microsoft (безкоштовно): http://activex.microsoft.com/activex/controls/agent2/MSagent.exe
Для анімації мною було обрано стандартний персонаж “Чарівник”.
Для того, щоб наш персонаж міг розмовляти треба встановити Microsoft Text-To-Speech http://activex.microsoft.com/activex/controls/sapi/spchapi.exe
Щоб він міг розмовляти російською необхідно завантажити голосовий драйвер Lernout&Hauspie TTS3000: http://activex.microsoft.com/activex/controls/agent2/lhttsrur.exe
Офіційно на сайті Microsoft можна завантажити такі персонажі:
Чарівник:Джин:Папугай:Робот:
Але в мережі існують сотні персонажів, наприклад на сайті http://characters.narod.ru можна завантажити такі персонажі:
Звуковий файл, який будемо використовувати для анімації помістимо в папку з програмою і назвемо наприклад arash.mp3, в програмі визначимо назву музичного файлу
MUZIKA db "play arash.mp3",0
та запустимо
call mciSendStringA,offset MUZIKA,0,0,0
ϳ? ?????? ???????? ???? ?????????? ?????? ????????????? ???. ?????? ???????? ??? ????????? ???????? ?????: 'Acknowledge','Alert','Announce','Blink','Confused','Congratulate','Congratulate_2','Decline','DoMagic1','DoMagic2','DontRecognize','Explain','GestureDown','GestureLeft','GestureRight','GestureUp','GetAttention','GetAttentionContinued','GetAttentionReturn','Greet','Hearing_1','Hearing_2','Hearing_3','Hearing_4','Idle1_1','Idle1_2','Idle1_3','Idle1_4','Idle1_5','Idle1_6','Idle2_1','Idle2_2','Idle2_3','Idle3_1','Idle3_2','LookDown','LookDownBlink','LookDownReturn','LookLeft','LookLeftBlink','LookLeftReturn','LookRight','LookRightBlink','LookRightReturn','LookUp','LookUpBlink','LookUpReturn','LookUpLeft','LookUpLeftBlink','LookUpLeftReturn','LookUpRight','LookUpRightBlink','LookUpRightReturn','MoveDown','MoveLeft','MoveRight','MoveUp','Pleased','Process','Processing','Read','ReadContinued','ReadReturn','Reading','RestPose','Sad','Search','Searching','StartListening','StopListening','Suggest','Surprised','Think','Thinking','Uncertain','Wave','Write','WriteContinued','WriteReturn','Writing','Hide','Show'.
Висновок
В даному курсовому проекті було описано специфічний спосіб створення програми для анімації музичного твору. Для анімації було обрано казковий персонаж Microsoft Agent “Чарівник”.
Список літературних джерел
1. Приклади використання функцій (електронна база) ASM_EXAMPLES
2. Методичні вказівки з курсу “Сиcтемне програмування та операційні системи” ЗБІРНИК ЛАБОРАТОРНИХ РОБІТ
3. Довідка по АРІ функціях “Borland C++ v.6.0”
4. Методичні вказівки для виконання курсової роботи Kurs_IIT.doc
5. Пирогов В. Ю. Ассемблер для Windows. — М.: Издатель Молгачева С.В., 2002. —552 с.: ил.
6. Зубков С. В. Assembler для DOS, Windows и UNIX. - М: ДМК. Пресс, 2000. - 608 с.: ил.
7. Магда Ю. С. Ассемблер. Разработка и оптимизация Windows-приложений. - БХВ-Петербург, 2003. - 544 с.: ил.