安装dspack的步骤

来源:互联网 发布:优化投资环境 编辑:程序博客网 时间:2024/05/01 18:26

dspack
安装之前,必须先安装DirectX9.0(DSPack2.3.4默认支持DirectX9.0)
利用最新 DircetX 9 中的 DirectShow 相关 API 播放 VCD、DVD、MP3、DivX 等影音格式文件的构件 ( 2.0 版,附源码 ) 影像与音质的质量极佳。适用 Win9X, ME, 2000已及D5 D6 D7
下载地址:
1)http://sourceforge.net/projects/dspack
2)http://www.progdigy.com/modules.php?name=DSPack


1 - Add this paths to your search directory:
       - (DSPackDir)/src/Directx9
       - (DSPackDir)/src/DSPack
译:添加查询路径,否则在编译时发生找不到相关.dcu文件错误。操作:Delphi(菜单) Tools->Envioronment Options->Library. 在Library Path处添加。

2 - Compile DirectX 9 Package (DirectX9_Dx.dpk) from the "packages" directtory.
译:编译DirectX9_Dx.dpr(x为Delphi版本号),这个包只要编译就可以了。

3 - Compile DSPack Package (DSPack_Dx.dpk) from the "packages" directory.
译:编译DSPack_Dx.dpr(x为Delphi版本号),这个包只要编译就可以了。

4- Install Design Package (DSPackDesign_Dx.dpk) from the "packages" directory.
译:编译并安装DSPackDesign_Dx.dpk(x为Delphi版本号)。

到这里,安装已完成。在Delphi控件面板上就可以看到DSPack控件了

安装 d6,d7都十分简单,只需要安装相应的包就可以了,bcb6相对复杂些,总结如下:
dspack bcb中要dxsdk的支持,下载地址:
URL http://download.microsoft.com/download/b/6/a/b6ab32f3-39e8-4096-9445-d38e6675de85/dx90bsdk.exe
1.
以下以/$(DSPACK)/當作dspack所在目錄。
以/$DXSDK/當作DXSDK所在目錄
以/$(BCB)/當作BCB所在目錄

2.
將/$(DSPACK)/include裡的檔案更新至/$(DXSDK)/include,會覆蓋幾個檔。 
再把/$(DXSDK)/include裡的檔更新至/$(BCB)/include。

3.
以上動作做完,就可安裝dspack directshow元件: 至/$(DSPACK)/packages/目錄裡,依序執行下面這三個檔案  
DirectX9_BCB6.bpk 執行compiler,儲存 
DSPack_BCB6.bpk 執行compiler,儲存 
DSPackDesign_BCB6.bpk 執行install 
這目錄的檔案,有些是唯讀的,執行前,把唯讀取消 在執行之前,先在Tools->Environment Option->Libary->Libary path 加入/$(DSPACK)/lib、/$(DSPACK)/src/DSPack、/$(DSPACK)/src/DirectX9 在執行之後,工具列就會多了directx元件

注意:請先確定windows系統檔有無d3d9.dll,d3dx9d.dll這兩個檔。在筆者的
 系統檔只有d3d9.dll,所以在compiler DirectX9_BCB6.bpk前,筆者先將d3dx9d.lib
 及d3dx9.pas從表格裡移除,再執行compiler。如此最後在install時,就不有
 找不到d3dx9d.dll這個訊息,(至於這樣做會不會有副作用,就不得而知,至少現
 在用都還沒出現)。


4.
安裝好dspack之後,我們就可以使DSPACK所附的範例試試directshow。 
執行Demos/BCB6/Playcap/Playcap.bpr。會出現一個錯誤訊息,這是因為 資料夾被改變,只要做點小改變就可以使用了。
這時我們可以從 project->options->directories/conditionals->include path這圖看出 
有些include目錄並不正確,只要將其改正即可使用。
../../../Src/DSPack 改成/$(DSPACK)/Src/DSPack 
../../../Src/DirectX9改成/$(DSPACK)/Src/DirectX9 

5.
如果以上修改后还不能运行,可以尝试下列修改:
1)
D:/DSPACK/Demos/BCB6/Playcap改成/$(DSPACK)/Demos/BCB6/Playcap 
相同的,在Libary path也要將 
D:/DSPACK/Demos/BCB6/Playcap改成/$(DSPACK)/Demos/BCB6/Playcap 

2)
改正之後,就可以執行::wsprintf(msg, _T("%s failed - %s/%d"), expr, file, line);对应[C++ Error] crtdbg.h(52): E2268 Call to undefined function '_T'又是为什么?

3)project->options->directories/conditionals->include 加上 /$(dspack)/src/DirectX9, /$(dspack)/src/DSPack2.第一個狀況我也有遇過,好像沒_T()這函數,在bcb裡的crtdbg.h這標頭檔裡,因為他是wsprintf,我想沒有_T()也沒關係,所以我就偷偷的把_T()拿掉了...compiler就過了...

原创粉丝点击