Zitat:
Wie es der Windows Mixer macht steht also auch direkt da, der geht vermutlich über die Process-ID.
Ich mache nichts anderes.. und gehe ebenfalls nur über die ID.
Ich liste alle Prozesse auf addiere diese zu einer liste und prüfe ob irgendeiner davon
diese Bedingung erfüllt.
if State <> uint(TAudioSessionState.AudioSessionStateExpired) then
Zitat:
GetSessionIdentifier gibt übrigens immer etwas zurück, auch unter Windows 7.
Hmm... kleines Beispiele ?
Wenn du das meinst ? Ja!
Zitat:
SessionIdentifier = {0.0.0.00000000}.{e457a6b5-b413-4304-9b72-f8ba7de1d36a}|\Device\HarddiskVolume1\Program Files (x86)
Was ich bei @TiGü gesehen habe hatte vergessen DisplayName und IconPath frei zu geben.
CoTaskMemFree(pDisplayName);
(Ok war\ist eh leer von daher erst mal egal)
Zitat:
und siehe da, das Verhalten ist so dokumentiert und vollkommen korrekt.
Korrekt ja laut Doku aber in meinen Augen.. sorry Schwachsinn.
Es wird also geprüft ob es sich um eine echte Anwendung handelt, wenn ja wird nix zurück gegeben um zu verhindern
das Developer den Mixer in dieser Art nachahmen können.
Diese Funktion ist dann einfach Nutzlos.
gruss