45.MIDI出力デバイスの名前を列挙する
< 使用用途 >
MIDI を使用する時に用いる
今回のサンプルソースをダウンロードする方は下記の「ダウンロード」を!
=> ダウンロード ・・・下記のサンプルと同じです。
< 説明 >
API関数のmidiOutGetDevCapsを使用します。
midiOutGetDevCaps=>MIDI出力デバイスの名前を列挙する
<引数>
uDeviceID:ID番号(0〜)
lpCaps:MIDIOUTCAPS構造体
uSize:デバイス名の文字数
@戻り値@
正常終了0以外
< SAMPLE >
'ここではMIDIの出力デバイスを閉じる処理です
'標準モジュール
Public Declare Function midiOutGetDevCaps Lib "winmm.dll" Alias
"midiOutGetDevCapsA" (ByVal uDeviceID As Long, lpCaps As MIDIOUTCAPS,
ByVal uSize As Long) As Long
Public Declare Function midiOutGetNumDevs Lib "winmm" Alias "midiOutGetNumDevs"
() As Integer
Public Const MAXPNAMELEN = 32
PublicType MIDIOUTCAPS
wMid As Integer
wPid As Integer
vDriverVersion As Long
szPname As String * MAXPNAMELEN
wTechnology As Integer
wVoices As Integer
wNotes As Integer
wChannelMask As Integer
dwSupport As Long
End Type
'ここからはフォームの処理
Private Sub Command1_Click()
Dim Ret As Long
Dim Name As MIDIOUTCAPS
'デバイスの個数を取得
Ret=midiOutGetNumDevs
'リストボックスに追加していく
For i = 0 To Ret-1
Ret = midiOutGetDevCaps(i, Name, Len(Name))
List1.AddItem Name.szPname
Next
End Sub