Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi MS-Vista und "WaveInGetNumDevs" fehlerhaft? (https://www.delphipraxis.net/90103-ms-vista-und-waveingetnumdevs-fehlerhaft.html)

Graffi 11. Apr 2007 18:19


MS-Vista und "WaveInGetNumDevs" fehlerhaft?
 
Hallo,

ich lese schon seit Win98 mit folgender Routine die vorhandenen Audiogeräte (Eingänge) ein.

Unter Vista klappt das nicht mehr, da ebenso alle Ausgänge mit ausgegeben werden.

Ist das ein Bug von Vista, oder liegt das Problem in der MMSystem?

Sonnige Grüße, Ralf

Delphi-Quellcode:
procedure TSetup.WriteDeviceInfo;
var wd : string;
    WaveInCaps  : TWaveInCaps;
    i,NumDevs : integer;
begin
  NumDevs:=waveInGetNumDevs;
  WavList.Clear;
  if NumDevs=0 then
    Exit;

  for i:=0 to NumDevs-1 do
  begin
    WaveInGetDevCaps(i, @WaveInCaps, SizeOf(WaveInCaps));
    wd := 'ID '+IntToStr(i)+', Device'+ String(WaveInCaps.szPName);
    WavList.Items.Add(wd);
  end;
end;
[edit=sakura] M$->MS :roll: Mfg, sakura[/edit]

Steve 12. Apr 2007 08:00

Re: M$-Vista und "WaveInGetNumDevs" fehlerhaft?
 
Guten Morgen,

bei Vista hat sich da wohl einiges bei der API für -allgemein formuliert- Audiogeräte getan: MSDN: Core Audio APIs in Windows Vista

Wenn Du die Lautstärkeregeelung (SndVol) öffnest, wirst Du sehen, dass die Einstellungen nicht mehr geräteabhängig (z.B. Wave, Line-In, Mikrofon - getrennt nach Ein- u. Ausgang), sondern anwendungsabhängig vorgenommen werden müssen.
Ich vermute mal, daher rührt auch der Fehler, der bei Dir auftritt.

Gruß
Stephan

Graffi 12. Apr 2007 14:38

Re: M$-Vista und "WaveInGetNumDevs" fehlerhaft?
 
Danke Steve!

Das wird wohl die ganzen Probleme erklären. Im Grunde macht MS hier etwas Sinnvolles, allerdings dürfen "wir" die Suppe auslöffeln.

Behelfen konnte ich mir vorerst, in dem ich in der Systemsteuerung:Sound alle unnötigen Geräte deaktiviert habe. Doch leider funktioniert ebenso der Aufruf der Lautstärkeregelung nicht mehr ... :(

Grüße, Ralf


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:16 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz