Lautstärke ausschalten / Ton aus

08/11/2009 - 22:16 von Tamara Mikes | Report spam
Salü alle zusammen

In meinem C# Programm würde ich gerne für einen Moment lang jeglichen Ton
ausschalten. Also rechtsklick auf den Lautsprecher neben der Uhr aus, nur
eben im Code.

Nun habe ich lange gegoogelt und einen Code gefunden der aber endlos lang
ist und für mich total kompliziert. Irgendwie stelle ich mir das für C# und
oop ganz einfach vor, irgend eine Klasse nach dem Motto:
windows.sound.enabled = false;

Gibt es irgendwo so eine einfache Lösung zum den Ton von Windows aus und
wieder ein zu schalten?

Viele Grüsse
Tamara
 

Lesen sie die antworten

#1 Kerem Gümrükcü
09/11/2009 - 00:56 | Warnen spam
Hallo,

Gibt es irgendwo so eine einfache Lösung zum den Ton von Windows aus und
wieder ein zu schalten?



der begriff "Einfach" ist interpretationssache. Um 100% sicher zu gehen,
würde
ich die ganzen Sound-Devices, also die Hardware auf dem System deaktivieren,
was aber sicherlich die gröbste aber auch effektivste Variante wàre. Dennoch
sollte
das hier aber reichen, wenn Du .z.b. den Sound auf den einzelnen Devices
einfach
runterdrehst auf 0. Dazu nimmst Du die "Multimedia Functions" von Windows.

[Multimedia Functions]
http://msdn.microsoft.com/en-us/lib...85%29.aspx

Dein Freund ist die Funktion "waveOutSetVolume". ich habe Dir sogar
mal schnell die Funktion nach C# übesetzt:

public enum HRESULT
{
MMSYSERR_NOERROR = 0,
MMSYSERR_ERROR = 1,
MMSYSERR_BADDEVICEID = 2,
MMSYSERR_NOTENABLED = 3,
MMSYSERR_ALLOCATED = 4,
MMSYSERR_INVALHANDLE = 5,
MMSYSERR_NODRIVER = 6,
MMSYSERR_NOMEM = 7,
MMSYSERR_NOTSUPPORTED = 8,
}

[DllImport("winmm.dll", SetLastError = true)]
public static extern HRESULT waveOutSetVolume(int uDeviceID, uint
dwVolume);

Der richtige Weg ist es alle "Devices" zu durchlaufen und für jeden Device
dann mit "waveOutSetVolume(0,0);" komplett still zu stellen, auch u.U. mal
die Ausgangswerte speichern und dann nach getaner Arbeit falls gewünscht
wieder bei Bedarf zurückstellen,...

Probier das alles erst mal selber und wenn nichts mehr geht, dann kannst Du
gerne hier fragen,...aber erst selber versuchen (Lerneffekt!),...

Grüße

Kerem

Beste Grüsse / Best regards / Votre bien devoue
Kerem Gümrükcü
Latest Project: http://www.pro-it-education.de/soft...iceremover
Latest Open-Source Projects: http://entwicklung.junetz.de

Ähnliche fragen