如何让电脑的SPEAKER出声音?能发嘟声音就可以了

解决方案 »

  1.   

    有声卡时 beep 不行呵, 好像无法控制
      

  2.   

    首先搞清楚你的操作系统!
    Procedure FnBeep(nFreq,nDura: Word);
    Label
        Skip;
    var
        nStart: DWord;
    begin
        Asm
                push    bx               // play
                in      al,     $61
                mov     bl,     al
                and     al,     3
                jne     Skip
                mov     al,     bl
                or      al,     3
                out     $61,    al
                mov     al,     $b6
                out     $43,    al
        Skip:   MOV     AX,     nFreq
                OUT     $42,    AL
                MOV     AL,     AH
                OUT     $42,    AL
                POP     BX
        end;
        nStart := GetTickCount;                  // Delay
        repeat
            Application.ProcessMessages;
        Until GetTickCount > nStart + nDura;
        asm
                IN      AL,     $61        // Shut up
                AND     AL,     $FC
                OUT     $61,    AL
        end;
    end;在 NT内核 下:
     Windows.Beep(nFreq, nDura);