2011-07-14 17 views
1

我目前正在嘗試開發一個小應用程序/ dll,它將讀取遠程directshow過濾器圖並從中收集信息以顯示在「正在播放」樣式的插件或腳本中。經過幾天的閱讀和後續測試,我意識到從ROT獲取過濾器圖形地址後,我無法將它從IUnknown接口指針轉換爲IFilterGraph,直到我註冊了Windows SDK附帶的「proppage.dll」。有沒有任何方法訪問遠程過濾器圖形,而無需在Windows Vista +上註冊proppage.dll?

所以我問的是,沒有其他方式來收集遠程過濾器圖形的任何信息,而無需註冊proppage.dll?

回答

2

您不能從另一個地址空間調用COM接口,除非您將接口指針和參數/返回值與其他進程進行組合。對於COM,您需要爲每個您希望能夠使用跨進程的接口註冊一個編組對象。標準的實現是在proppage.dll中。

我不認爲有一個簡單的方法來訪問接口,而不提供編組。如果您不想使用proppage.dll,則可以從SDK提供的IDL文件構建編組代碼,並將其編譯到您自己的應用程序中。

G

相關問題