system-beep erzeugen



  • Hi,

    wie kann ich einen Systembeep erzeugen?
    Welchen Interrupt benoetige ich dafuer?

    Danke schon mal im Voraus

    mfg
    v R



  • Wenn von Interrupt die Rede ist, gehe ich davon aus, dass Dein Programm unter DOS laeuft...
    Das geht mit Funktion 06h des int 21h. Einfach den ASCII-Code 7 in die Konsole schreiben lassen...
    Bsp:

    mov ah,06h
    mov dl,07h
    int 21h
    


  • Hi,

    danke!

    Also wenn ich das in ein BCB-Project (VCL oder CLX) einbinden will, wuerde
    es also nicht funktionieren. Eigentlich klar, da es ja dos ist. Wie aber
    wuerde ich es dann machen?

    Danke schon mal im Voraus

    mfg
    v R



  • Ich vermute mal, dass auch ein beep ausgegeben wird, wenn Du mit z.B. cout den ASCII-Code 7 auf den Bildschirm schreiben laesst. Und das wird wohl auch in Windows funktionieren.
    Wie Du sonst Sachen unter Windows ansteuern kannst, erfragst Du aber besser im WinAPI-Forum. Diese ganzen WinAPI-Funktionen heissen nachher in Assembler genauso, wie z.B. in C++.



  • Also, hier kurz die API funktion (heißt ganz intuitiv Beep()):

    The Beep function generates simple tones on the speaker. The function is synchronous; it does not return control to its caller until the sound finishes.

    BOOL Beep(

    DWORD dwFreq, // sound frequency, in hertz
    DWORD dwDuration // sound duration, in milliseconds
    );

    Parameters

    dwFreq

    Windows NT:

    Specifies the frequency, in hertz, of the sound. This parameter must be in the range 37 through 32,767 (0x25 through 0x7FFF).

    Windows 95:

    The parameter is ignored.

    dwDuration

    Windows NT:

    Specifies the duration, in milliseconds, of the sound.

    Windows 95:

    The parameter is ignored.

    Return Values

    If the function succeeds, the return value is nonzero.
    If the function fails, the return value is zero. To get extended error information, call GetLastError.

    Remarks

    Windows 95:

    The Beep function ignores the dwFreq and dwDuration parameters. On computers with a sound card, the function plays the default sound event. On computers without a sound card, the function plays the standard system beep.

    mfg
    -bg-



  • danke

    mfg
    v R



  • BOOL MessageBeep(
      UINT uType   // sound type
    );
    

    uType
    Specifies the sound type, as identified by an entry in the [sounds] section of the registry. This parameter can be one of the following values: Value Sound
    0xFFFFFFFF Standard beep using the computer speaker
    MB_ICONASTERISK SystemAsterisk
    MB_ICONEXCLAMATION SystemExclamation
    MB_ICONHAND SystemHand
    MB_ICONQUESTION SystemQuestion
    MB_OK SystemDefault



  • cout << "\a";


Anmelden zum Antworten