Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
 
Tot
6 / 3 / 0
Регистрация: 25.06.2012
Сообщений: 134
1

Редактор звуковых файлов

29.04.2015, 11:48. Просмотров 317. Ответов 3
Метки нет (Все метки)

Какая api-функция используется для загрузки звуковых файлов в рабочую область окна Windows?

Вообще замысел сделать на асме звуковой редактор.
Пока вот что сделал:

Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
    .386
    .model  flat,stdcall
    option  casemap:none
 
WinMain proto :DWORD,:DWORD,:DWORD,:DWORD
include \masm32\include\windows.inc
include \masm32\include\user32.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib
 
    .data
ClassName   db "SimpleWinClass",0
AppName     db "Редактор",0
MenuName    db "FirstMenu",0
About_string    db "О программе",0
Load_file   db "Здесь загрузка файла",0
Save_string     db "Сохранить проект",0
 
    .data?
hInstance   HINSTANCE   ?
CommandLine     LPSTR       ?
 
    .const
IDM_ABOUT   equ 1
IDM_LOAD    equ 2
IDM_SAVE    equ 3
IDM_EXIT    equ 4
 
    .code
start:
    invoke  GetModuleHandle,NULL
    mov     hInstance,eax
    invoke  GetCommandLine
    mov     CommandLine,eax
    invoke  WinMain,hInstance,NULL,CommandLine,SW_SHOWDEFAULT
    invoke  ExitProcess,eax
 
WinMain proc    hInst:HINSTANCE,hPrevInst:HINSTANCE,CmdLine:LPSTR,CmdShow:DWORD
    LOCAL   wc:WNDCLASSEX
    LOCAL   msg:MSG
    LOCAL   hwnd:HWND
    mov     wc.cbSize,SIZEOF WNDCLASSEX
    mov     wc.style,CS_HREDRAW or CS_VREDRAW
    mov     wc.lpfnWndProc,OFFSET WndProc
    mov     wc.cbClsExtra,NULL
    mov     wc.cbWndExtra,NULL
    push    hInst
    pop     wc.hInstance
    mov     wc.hbrBackground,COLOR_WINDOW+1
    mov     wc.lpszMenuName,OFFSET MenuName
    mov     wc.lpszClassName,OFFSET ClassName
    invoke  LoadIcon,NULL,IDI_APPLICATION
    mov     wc.hIcon,eax
    mov     wc.hIconSm,eax
    invoke  LoadCursor,NULL,IDC_ARROW
    mov     wc.hCursor,eax
    invoke  RegisterClassEx,addr wc
    invoke  CreateWindowEx,NULL,ADDR ClassName,ADDR AppName,\
           WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,\
           CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,\
           hInst,NULL
    mov     hwnd,eax
    invoke  ShowWindow,hwnd,SW_SHOWNORMAL
    invoke  UpdateWindow,hwnd
    .WHILE  TRUE
                INVOKE GetMessage,ADDR msg,NULL,0,0
                .BREAK .IF (!eax)
                INVOKE DispatchMessage,ADDR msg
    .ENDW
    mov     eax,msg.wParam
    ret
WinMain endp
 
WndProc proc    hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
    .IF uMsg==WM_DESTROY
        invoke  PostQuitMessage,NULL
    .ELSEIF uMsg==WM_COMMAND
        mov     eax,wParam
        .IF ax==IDM_ABOUT
            invoke  MessageBox,NULL,ADDR About_string,OFFSET AppName,MB_OK
        .ELSEIF ax==IDM_LOAD
            invoke  MessageBox,NULL,ADDR Load_file,OFFSET AppName,MB_OK
        .ELSEIF ax==IDM_SAVE
            invoke  MessageBox,NULL,ADDR Save_string,OFFSET AppName,MB_OK
        .ELSE
            invoke  DestroyWindow,hWnd
        .ENDIF
    .ELSE
        invoke  DefWindowProc,hWnd,uMsg,wParam,lParam
        ret
    .ENDIF
        xor     eax,eax
        ret
WndProc endp
    end     start
И rs:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#define IDM_ABOUT   1
#define IDM_LOAD    2
#define IDM_SAVE    3
#define IDM_EXIT    4
 
FirstMenu MENU
{
   POPUP "&Файл"
        {
         MENUITEM "&Загрузить файл",IDM_LOAD
         MENUITEM "&Сохранить проект",IDM_SAVE
         MENUITEM SEPARATOR
         MENUITEM "&Выход",IDM_EXIT
        }
   MENUITEM "&О программе",IDM_ABOUT
}
Добавлено через 5 минут
Да и реально ли это делать на асме?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.04.2015, 11:48
Ответы с готовыми решениями:

Редактор текстовых файлов под DOS
Привет ребята! Подскажите у кого какие идеи, товарищ попросил помочь, редактор...

Генерация звуковых сигналов
Есть задача: нужно написать резидентную программу, осуществляющую генерацию...

Сгенерировать через Speaker IBM PC 10 звуковых сигналов
Добрый день, форумчане! Есть задание сгенерировать через Speaker IBM PC 10...

Формирование звуковых сигналов при нажатии на кнопки клавиатуры
сделайте пожалуйста программу на ассемблере: разработать программу,...

Создать два файла: в первый записать содержимое 1 + 2 файлов, а во второй – 2 + 1 файлов
Создать два файла: в первый записать содержимое 1 + 2 файлов, а во второй – ...

3
Tot
6 / 3 / 0
Регистрация: 25.06.2012
Сообщений: 134
02.05.2015, 20:22  [ТС] 2
Неужели никто с этим не знаком?
0
Mikl___
Автор FAQ
13300 / 6373 / 629
Регистрация: 11.11.2010
Сообщений: 11,534
03.05.2015, 05:10 3
Tot,
почитай http://www.cyberforum.ru/assembler-articles/thread751124.html
1
Tot
6 / 3 / 0
Регистрация: 25.06.2012
Сообщений: 134
03.05.2015, 14:22  [ТС] 4
Mikl___, спасибо.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.05.2015, 14:22

редактор звуковых файлов
ку всем!у мя такая проблемка...дали тему курсовика:программа-редактор звуковых...

Подскажите программу (редактор) для нарезки и склейки звуковых файлов
Добрый деньЁ Подскажите не сложную программа (типа adobe'вских), чтобы можно...

Использование звуковых файлов
Здравствуйте. При использовании внешних файлов не в ресурсах, не находит их,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru