2012-03-04 80 views
0

我的C#應用​​程序使用DirectShow並需要運行DirectX。我想檢查DirectX在啓動時是否啓用,任何人都可以建議正確的方法來執行此操作?C#DirectShow/Direct X

感謝

+0

您可以禁用DirectX?你確定?我認爲所有使用Windows XP或更高版本的電腦都應該安裝DirectX 8或更高版本。 – svick 2012-03-04 15:57:39

+0

在我的XP機器上,我可以打開dxdiag並禁用DirectX功能DirectDraw加速和Direct3D加速。我無法在Win 7機器上做到這一點,我認爲這可能取決於您擁有的圖形芯片。 – integra753 2012-03-21 13:41:07

+0

這實際上是否禁用DirectDraw或Direct3D?或者它只是禁用硬件加速,正如文字所暗示的那樣? (即它仍然會運行,只會變慢)。 – svick 2012-03-21 14:57:38

回答

0

我覺得我說得如果DirectX DLL是不是在主機上安裝,應用程序甚至不會啓動。除此之外,您應該始終在嘗試使用它們之前檢查創建的DirectX對象是否成功。

1

DirectShow不是DirectX的一部分。在使用DirectDraw和Direct3D的視頻渲染器中只有一些交叉點,並且對音頻API進行封裝,而這些API實際上不再獨立,而是封裝在其他API上。我會說沒有什麼需要檢查的,DirectShow已經是一個OS核心組件,但是如果你有一些具體的問題,那麼它們是什麼?也許你可以嘗試直接在應用程序啓動時創建一些DirectX對象,並查看這個嘗試是否成功。