const
DefOpenList = <font color="Navy">'MPEG Audio Files(*.mp3;*.mp2;*.mp1)|*.mp3;*.mp2;*.mp1|'</font>+
<font color="#000080">'Ogg Vorbis Audio (*.ogg)|*.ogg|'</font>+
<font color="#000080">'Microsoft Wave Audio (*.wav)|*.wav|'</font>+
<font color="#000080">'MOD Music (*.mo3;*.it;*.xm;*.s3m;*.mtm;*.mod;*.umx)|*.mo3;*.it;*.xm;*.s3m;*.mtm;*.mod;*.umx|'</font>+
<font color="#000080">'Windows Media Audio (*.wma;*.wm;*.wax;*.asx;*.wn;*.wmx;*.wmd;*.wmz)|*.wma;*.wm;*.wax;*.asx;*.wn;*.wmx;*.wmd;*.wmz|'</font>+
<font color="#000080">'Midi(*.mid;*.midi;*.rmi)|*.midi;*.mid;*.rmi|'</font>+
<font color="#000080">'AudioCD(*.cda)|*.cda|'</font>+
<font color="#000080">'Video(*.avi;*.wmv;*.mpg;*.asf;*.dvr-ms)|*.avi;*.wmv;*.mpg;*.mpeg;*.asf;*.dvr-ms'</font>;
var AllSupFiles : widestring = <font color="#000080">'All Supported Files|*.mp3;*.mp2;*.mp1;*.ogg;*.wav;*.mo3;*.it;*.xm;*.s3m;*.mtm;*.mod;*.umx;*.wm;*.wax;*.asx;*.wn;'+
'*.wmx;*.wmd;*.wmz;*.midi;*.mid;*.rmi;*.cda;*.avi;*.wmv;*.mpg;*.mpeg;*.asf;*.dvr-ms'</font>;
<font color="Red">
...
OpenDialog1.Filter := DefOpenList
fh := FindFirstFile(PChar(ExeDir + <font color="#000080">'bass*.dll'</font>), fd);
if (fh <> INVALID_HANDLE_VALUE) then
try
repeat
plug := BASS_PluginLoad(fd.cFileName, 0);
if Plug <> 0 then
begin
Info := pointer(BASS_PluginGetInfo(Plug));
for a := 0 to Info.formatc - 1 do
begin
OpenDialog1.Filter := OpenDialog1.Filter + <font color="Navy">'|'</font> + Info.Formats[a].name + <font color="#000080">'('</font> +
Info.Formats[a].exts + <font color="#000080">')|'</font> + Info.Formats[a].exts;<font color="#ff0000">
AllSupFiles := AllSupFiles + <font color="Navy">';' </font>+ Info.Formats[a].exts;<font color="#ff0000">
end;
end;
until FindNextFile(fh, fd) = false;
finally
Windows.FindClose(fh);
end;
OpenDialog1.Filter := AllSupFiles + <font color="Navy">'|'</font> + OpenDialog.Filter;