beep() geht nicht
-
Hallo
ich will ein programm schreiben, dass einen einfachen "beep" durch die Funktion "beep(Frequenz, Länge);" ausgibt:
#include <windows.h> int beep() { beep(263,5); while (1); }
wenn ich das programm aber nun nach dem kompilieren ausführe, startet es ganz normal ohne fehlermeldungen nur kann ich keinen "beeeep" hören. Ich sehe nur ein schwarzes fenster.
Ach ja der Ton vom PC ist an.Kann mir bitte jemand sagen, woran es liegt dass der "beeep" nicht kommt.
Danke
Macl
-
Das Semikolon hinter int beep() muss weg.
-
mittlerweile geht das programm, die Fehler lagen an Vista.
Ich musste die Einstellungen verändern.
Jetzt geht das programm, nur kommt kein beeep
-
Es kann sein dass du keinen PC Speaker hast. Die Beeps laufen über einen komischen Bioslautsprecher, die mit den normalen Lautsprechern nichts zu tun haben.
Probiere mal das hier:#include <stdio.h> int main(){ printf("\7"); return 0; }
Wenn kein unglaublich nervtötendes piepsen kommt dann kannst du deine Beeps vergessen.
Versuche mal die Werte von deinem beep anzupassen. 263 ist ein sehr niedriger Ton und 5 Millisekunden sind so kurz dass du wahrscheinlich keine Chance hast ihn zu hören, vor allem bei einem Desktoprechner. beep(10000, 500) sollte besser zu hören sein.
Dann solltest du noch den Rückgabewert von beep prüfen. Die Funktion gibt 0 zurück wenn sie fehlgeschlagen ist. Wenn sie fehlschlägt kannst du mit GetLastError herausfinden wieso sie fehlgeschlagen ist.
-
Alternativ dazu könntest du noch \a ausprobieren
#include <stdio.h> int main(){ printf("\a"); return 0; }
-
Dieser Thread wurde von Moderator/in rüdiger aus dem Forum ANSI C in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
War es nicht so, dass es "Beep" (PC-Speaker) ab Vista nicht mehr gibt?
-
Die Funktion schreibt man mit großem Anfangsbuchstaben.
Und ab Vista 64 geht es nicht mehr.
-
Work0r schrieb:
Die Funktion schreibt man mit großem Anfangsbuchstaben.
Und ab Vista 64 geht es nicht mehr.habs mit Windows 7 64 Bit gestetet:
Der Ton wird von der Soundkarte ausgegeben!
-
Sorry, ab ist falsch formuliert. Bei Vista gehts nicht, steht ja dort.
-
Die Frequenzen müssen hoch sein..
Versuch es mal mit ner Frequenz am 100.lg. ReloadedArtwork