十進制:143196173
十六進制:0x889000D從到IAudioSessionControl2->GetProcessId()呼叫推理HRESULT,0x889000D
結果。
GetLastError函數= 126 *
消息=「指定的模塊找不到」
我真的不知道如何解釋這個錯誤。另外,我無法在任何地方找到HRESULT的描述。記錄的返回碼是S_OK,E_POINTER,AUDCLNT_E_NO_SINGLE_PROCESS和AUDCLNT_E_DEVICE_INVALIDATED。
任何人都知道此代碼指示什麼?
*這是由Marshal.GetLastError通過提供消息的Win32Exception獲取的跨管理/非管理邊界編組的錯誤。它可能是假的,但它是我所擁有的。 HRESULT直接從非託管代碼中取出。
進一步調查,FAILED()似乎並不認爲這是一個錯誤。但是,out參數被清除(設置爲0),這沒有任何意義。另外,GetErrorInfo返回S_FALSE;所以沒有任何額外的調試信息可以繼續。
我看到與此錯誤代碼結合的進程ID爲0,與「第一個進程」位有什麼衝突。無論如何,我可以將此視爲一種「保釋」狀態,並有更多的工作。 – 2009-07-26 05:20:07
如果您看到進程ID爲0,則可能是Windows聲音會話(您可以使用IAudioSessionControl2-> IsSystemSoundsSession()來檢查)。 Windows聲音會話永遠不會有進程ID。 – 2009-07-26 06:11:02