2011-11-18 21 views
1

我有一個使用DSPACK組件庫的Delphi 6應用程序,它構建一個過濾器圖並運行它。當我運行過濾器圖時,我通過發生錯誤 HRESULT從IMediaControl.Run()返回,使用cePlay控件事件狀態。我知道我可以使用HRESULT錯誤代碼來猜測哪個過濾器失敗,但我想要一個更好的方法。當IMediaControl.Run(csPlay)通過DirectShow調用或調用序列返回失敗的 HRESULT代碼時,是否有辦法查明哪個篩選器觸發了失敗?當我調用IMediaControlRun時,如何確定我的DirectShow過濾器圖形中哪個過濾器失敗?

回答

1

有沒有辦法知道,你只是從一些過濾器轉發錯誤代碼。雙擊的最佳策略是簡化圖形並隔離問題。

+0

好的,會做的。在這種情況下很容易追查。我忽略了將輸出文件名稱設置爲文件寫入器過濾器,在正常工作之前需要將其分配給它。但我相信在其他時候調試路徑並不那麼簡單。 –

相關問題