IDirectSoundBuffer9* pDSBPrimary = NULL;
IDirectSound3DListener9* pDSListener;
...
if(FAILED(hr = g_pDS->CreateSoundBuffer( &dsbd, &pDSBPrimary, NULL )))
return hr;

if(FAILED(hr = pDSBPrimary->QueryInterface(IID_IDirectSound3DListener9,
(LPVOID *)&pDSListener)))
return hr;

pDSListenerは、CreateSoundBufferのような関数がないから、
QueryInterfaceを使わなくてはいけないのでしょうか?