Delphi獲取不同的聲音播放設備,這些設備包括:Aux設備、Wave播放設備、錄音設備、MIDI音樂播放、MIDI音樂輸入設備、游戲桿設備、混合設備,同時也可獲取到顯卡硬件信息。如果你需要使用Delphi獲取上述任一個系統設備的話,你不妨參考下這個代碼,運行截圖:
完整代碼:
001
unit
Unit1;
002
interface
003
uses
004
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
005
Dialogs, StdCtrls,mmsystem;
006
type
007
TForm1 =
class
(TForm)
008
Button1: TButton;
009
ListBox1: TListBox;
010
Button2: TButton;
011
procedure
Button1Click(Sender: TObject);
012
Button2Click(Sender: TObject);
013
private
014
{ Private declarations }
015
public
016
{ Public declarations }
017
end
;
018
var
019
Form1: TForm1;
020
implementation
021
{$R *.dfm}
022
TForm1
.
023
dd: TDisplayDevice;
024
begin
025
dd
cb := sizeof(dd);
026
ListBox1
Clear;
//清空列表框
027
if
EnumDisplayDevices(
nil
,
0
, dd,
)=
false
Then
//獲取當前使用的顯卡
028
Listbox1
Items
Add(
'沒有發現顯卡設備信息'
)
029
Else
030
'顯卡------'
+dd
DeviceString);
031
032
033
Var
aux,waveout,wavein,midiout,midiin,mixer:
integer
034
auxcap:AUXCAPS;
035
waveoutcap:WAVEOUTCAPS;
036
waveincap:WAVEINCAPS;
037
midioutcap:MIDIOUTCAPS;
038
midiincap:MIDIINCAPS;
039
joycap:JOYCAPS;
040
mixercap:MIXERCAPS;
041
042
aux:=Trunc(AuxGetNumDevs);
043
waveout:=Trunc(WaveOutGetNumDevs);
044
wavein:=Trunc(WaveInGetNumDevs);
045
midiout:=Trunc(MidiOutGetNumDevs);
046
midiin:=Trunc(MidiInGetNumDevs);
047
mixer:=Trunc(MixerGetNumDevs);
048
049
//獲取Aux設備
050
aux=
051
'沒有發現AUX設備'
052
053
Begin
054
AuxGetDevCaps(
,@auxcap,sizeof(AUXCAPS));
055
'AUX設備---------'
+auxcap
szPname);
056
057
//獲取Wave播放設備
058
waveout=
059
'沒有發現Wave播放設備'
060
061
062
WaveOutGetDevCaps(
,@waveoutcap,sizeof(WAVEOUTCAPS));
063
'Wave播放設備---------'
+waveoutcap
064
065
//獲取錄音設備
066
wavein=
067
'沒有發現錄音設備'
068
069
070
WaveInGetDevCaps(
,@waveincap,sizeof(WAVEINCAPS));
071
'當前錄音設備-----------'
+waveincap
072
073
//獲取MIDI音樂播放
074
midiout=
075
'沒有發現MIDI音樂播放設備'
076
077
078
MidiOutGetDevCaps(
,@midioutcap,sizeof(MIDIOUTCAPS));
079
'MIDI音樂播放設備----'
+midioutcap
080
081
//獲取MIDI音樂輸入設備
082
midiin=
083
'沒有發現MIDI音樂輸入設備'
084
085
086
MidiInGetDevCaps(
,@midiincap,sizeof(MIDIINCAPS));
087
'MIDI音樂輸入設備----'
+midiincap
088
089
//獲取游戲桿設備
090
JoyGetDevCaps(
,@joycap,sizeof(JOYCAPS));
091
joycap
szPname=
''
092
'沒有發現游戲操縱桿設備'
093
094
'游戲操縱桿設備----'
+joycap
095
//獲取混合設備
096
mixer=
097
'沒有發現混合設備'
098
099
100
MixerGetDevCaps(
,@mixercap,sizeof(MIXERCAPS));
101
'混合設備----'
+mixercap
102
103
104
End
Delphi 2009 中使用需要修改一下 Bass.pa
本例效果圖:代碼文件:unit Unit1;i
//聲明:GetDiskFreeSpace(
Delphi 2006專業版用戶將能夠構建基於Winfor
本例效果圖: 代碼文件:unit Unit1;inter
//放置控件: ClIEntDataSet1、DataSo