Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#4

Re: Per Knopfdruck Micro an- und Ausschalten

  Alt 29. Aug 2006, 16:43
Hi,
du solltest dir dieses Fachchinesisch aneignen, da hier immer alle Infos zu solchen Systemnahen Funktionen zu finden sind! Ausserdem hat sich hier schon jmd. die Mühe gemacht nicht nur auf MS zu verweisen oder auf das PSDK, also ruhig mal anschauen was es da so für Funktionen gibt!
Du würdest schnell auf verschiedene Methoden und Gruppen stossen, z.B. Wavefunktionen. Da dein Teamspeak wahrscheinlich als solche ausgegben wird, könnte dich dann die Funktion MSDN-Library durchsuchenWaveOutSetVolume sehr stark interessieren.
Weil ich heute mal einen guten Tag hab ein wenig Hilfe zu dem Thema: Schau dir unbedingt die Seite WaveOutSetVolume an. Die ist wirklich leicht verständlich und es wird dir nicht jedesmal jmd. die Suche abnehmen!
Hier findest du ein paar interessante Infos, z.B. welche Parameter erwartet werden und wie die möglichen Rückgabeparameter aussehen.
Ziemlich am Schluß werden immer die Headerdateien angegeben, die hier benötigt werden. In Delphi heißen die gleich (bis auf das .h). Als Motivation, dass du dir die Seiten anschaust sage ich jetzt auch nicht, was in die Uses-Klausel rein muss.

Wie immer arbeitet Windows hier mit Handles. Du benötigst in diesem Fall das Handle zu dem Audiodevice, dass du Stumm schalten möchtest. Wie man dieses bekommst findest du auch mit ein wenig stöbern in den Seiten. Du findest in dem allgemeinen Teil Devices and Data Types (wo man solche Infos auch erwarten kann), folgenden Abschnitt:
Zitat von MSDN:
Audio devices are identified by a device identifier. The device identifier is determined implicitly from the number of devices present in a system. Device identifiers range from zero to one less than the number of devices present. For example, if there are two waveform-audio output devices in a system, valid device identifiers are 0 and 1.

After you determine how many devices of a certain type are present in a system, you can use one of the following functions to query the capabilities of each device.
Ja, hier sieht man eigentlich, dass die MSDN Hilfen immer recht gut geschrieben sind (kenn da echt einige sehr deutlich schlechtere, unvollständige und unbrauchbare Dokumentationen). Wie du hier siehst, kannst du einfach mit MSDN-Library durchsuchenwaveOutGetNumDevs die Anzahl der Geräte ermitteln und hast damit automatisch die Handles. Diese gehen von 0 bis zu der ermittelten Anzahl - 1. Details welches Devices jetzt was entspricht bringt dir dann MSDN-Library durchsuchenwaveOutGetDevCaps und wie du dann die Lautstärke setzt steht hier ja schon (geht alles aus der Seite, nicht dem Zitat hervor).

Ja, wie gesgagt, mein Tipp ist du schaust dir wenigstens die Seiten noch mal an und fragst dann wenn du dort etwas nicht verstehst nochmal nach. Wie gesagt, hier wurde dir schon vor diesem Beitrag eine Menge Arbeit abgenommen, ein wenig selbst machen musst du auch.

Gruß Der Unwissende

[EDIT]
Sorry, hab gerade gesehen, dass es um den Eigang geht, einfach out durch in ersetzen, dann sollte es fast gehen!
[/EDIT]
  Mit Zitat antworten Zitat