У меня есть аудио приложение WPF.
Иногда (и даже в отладчике) я вижу NullReferenceException
, который не несет с собой информацию трассировки стека.
Как можноначать отладку такой проблемы?
Немного предыстории:
Я P / Вызываю функции в WinMM.dll
, что включает в себя регистрацию обратного вызова при вызове waveOutOpen
[DllImport("winmm.dll")]
public static extern MmResult waveOutOpen(out IntPtr phwo, IntPtr uDeviceID, WaveFmt pwfx, WaveCallbk dwCallback, IntPtr dwInstance, int fdwOpen);
Сложно добиться стабильности, особенно в тот момент, когда я вызываю waveOutClose
и сразу же снова вызываю waveOutOpen
(обычно для изменения формата вывода).
Я подозреваючто проблема может быть связана с вызовами, которые я описывал выше (хотя при таком небольшом знании я мог быть совершенно не в своей цели).
Воспроизведение проблемы в настоящее время оказывается неуловимым, хотя я могу предоставитьпостроить для пользователя, который достаточно последовательно видит эту проблему.Я мог бы попытаться ускорить операции, которые вызывают проблему, до такой степени, что воспроизведение проблемы в отладчике является более определенным.
Что касается отладчика, я не возился ни с одним изнастройки (включая Enable unmanaged code debugging
) или любые настройки Debug -> Exceptions...
.Честно говоря, я совершенно не понимаю, что здесь предлагается, поэтому любые советы приветствуются.
Как исключение может не иметь трассировки стека?Вы видели это раньше?Помогите!