1. 程式人生 > >directshow寫的transform filter,不能註冊ax檔案,提示沒有找到DllRegisterServer輸入點

directshow寫的transform filter,不能註冊ax檔案,提示沒有找到DllRegisterServer輸入點

學習directshow有一段時間了,由於專案需要,今天試著自己寫一個transform filter,成功生成了ax檔案,但是發現裡面沒有lib檔案和exp檔案。開啟命令列註冊,提示如下錯誤:已載入XXX.ax,但沒有找到DllRegisterServer輸入點,XXX.ax似乎不是.DLL或.ocx檔案,找了半天資料,還是沒發現到底哪個地方出現了問題,我用的是vs2008,建立的是win32專案下的空白dll檔案。沒辦法,我就猜想是不是專案屬性的一些配置有問題,我開啟一個sdk中的transform filter的例子,右擊屬性,一點點的對比檢視,發現有兩個地方跟我現在專案的配置不一樣,都在Linker目錄下的Input屬性處, Additional Dependencies下面新增lib:strmbase.lib msvcrt.lib winmm.lib odbc32.lib odbccp32.lib;在Module Definition File下新增.\AddEffect.def,當然,此處的AddEffect是我的def檔名,使用的時候修改一下就行。然後重新編譯生成專案,ok,ax、lib、exp檔案都生成好了。