Die Antwort: "Windows Mixer
Api" ist so allgemein
Ich hatte mich ja bereits verbessert und Entschuldige mich hiermit nochmals für eine falsch erste Antwort, das war wirklich nur für alles oder nichts Methodik.
Ich suche mit den mir gegebenen Stichworten
Dann hättest Du auch was gefunden, MfPack zum Beispiel auf Sourceforge. Da hast du eine komplette Delphi Komponente die genau das machen kann was Du willst. Fremde Prozesse stumm schalten.
Der Tipp war sehr allgemein
In meinem dritten Post gab ich Dir Links zu exakt den zwei
Api's die Du brauchst, EWeiss sagte Dir wonach Du suchen solltest, da kam sogar ein Link mit einem kompletten Source Code!
und wie so oft gibt es da nicht einen fertigen Befehl
Delphi-Quellcode:
uses
MMDeviceApi,
ActiveX, AudioPolicy;
var
DeviceEnumerator: IMMDeviceEnumerator;
DefaultDevice: IMMDevice;
SessionManager: IAudioSessionManager;
SessionControl: IAudioSessionControl;
begin
if Succeeded(CoCreateInstance(CLSID_MMDeviceEnumerator,
nil, CLSCTX_INPROC_SERVER, IID_IMMDeviceEnumerator, DeviceEnumerator))
and Succeeded(DeviceEnumerator.GetDefaultAudioEndpoint(eRender, eMultimedia, DefaultDevice))
and Succeeded(DefaultDevice.Activate(IID_IAudioSessionManager, CLSCTX_INPROC_SERVER,
nil, IUnknown(SessionManager)))
and Succeeded(SessionManager.GetAudioSessionControl(
nil, 0, SessionControl))
then
SessionControl.SetDisplayName('
Mein Programm',
nil);
ein Befehl der Dir eine Schnittstelle "SessionControl" anbietet, gefunden auf Stackoverflow.