上下文:我有一段代码知道 waveOut 句柄 (HWAVEOUT) 的值。但是代码没有创建句柄,因此在创建句柄时传递给 waveOutOpen 的 WAVEFORMATEX 是未知的。
我想找出传递给 waveOutOpen 调用的那个 WAVEFORMATEX 结构的内容。
使用它的更多细节:代码在调用而不是 waveOutWrite 的挂钩函数中运行。因此代码知道句柄值,但不知道句柄创建的细节。
只是为了让人们不需要查找:
waveOutOpen 的签名是
MMRESULT waveOutOpen(
LPHWAVEOUT phwo,
UINT uDeviceID,
LPWAVEFORMATEX pwfx,
DWORD dwCallback,
DWORD dwInstance,
DWORD fdwOpen
);
waveOutWrite 的签名是:
MMRESULT waveOutWrite(
HWAVEOUT hwo,
LPWAVEHDR pwh,
UINT cbwh
);
注意:我也在挂钩 waveOutOpen,但它可能在我有挂钩之前就已经被调用了。