回 帖 发 新 帖 刷新版面

主题:跪求

按大写字母“A”,唱乐曲1按大写字母“B”,唱乐曲2按大写字母“C”,唱乐曲3按"X"鍵,退出[em10]

回复列表 (共1个回复)

沙发

lz想要用汇编来播放音乐吗? 如果可以的话可以用PlaySound win32 api函数来播放。
音乐处理完之后,便可以写一个wrapper函数,像

INCLUDE somewindows header

EXTERN PlaySound@12:PROC

;---------------------------
PlaySoundWrapper PROC USES ebx
;Receive al as char
;Return nothing

    ;Pass the third parameter
    mov edx,SND_ASYNC
    or edx,SND_FILENAME
    push edx

    ;Pass the second parameter
    mov edx,0
    push edx

    ;going to determine the first parameter
    cmp al,'A'
    jnz L1
    push OFFSET _strMusic1

L1:    cmp al,'B'
    jnz L2
    push OFFSET _strMusic2

L2: cmp al,'C'
    jnz LED
    push OFFSET _strMusic3

LDN:call PlaySound@12

lED:ret

PlaySoundWrapper ENDP


差不多应该是那样,我也没试过直接调用api,楼主可以看看

我来回复

您尚未登录,请登录后再回复。点此登录或注册