WINCE5.0中PLAYWND的编译步骤

PLAYWND源文件的目录是$(_PUBLICROOT)/DIRECTX/SDK/SAMPLES /DSHOW/PLAYERS/PLAYWND, 默认情况下WINCE是不会将playwnd加入到内核中去的。下面介绍的是如何成功编译playwnd项目及将playwnd.exe加入到wince内核中。


1.   打开PLAYWND目录下的source文件,将TARGETTYPE=LIBRARY改为TARGETTYPE=PROGRAM, 通过这个修改就能把该project编译成playwnd.exe文件,而不是只编译声成playwnd.lib的库文件。

2.   此时你可以在FileView中将鼠标移动到playwnd的目录上,右键点击并选择Build Current Project, Build的过程中可能会出现一些Link的错误(我的是有出现错误,当然如果您没有出现该错误就不用继续看错误处理方法了呵),这是因为该project没有加入一些库文件导致,解决方法见第三点。

3.   2中的方法,右键点playwnd,选择Setting->Link,Additional Libraries一栏中增加如下几个lib文件(变量的路径可在PBBuild OS->Open Release Directory的命令行上输入env来查看,或者直接进wince.bat查看)
$(_PUBLICROOT)/DIRECTX/SDK/LIB/X86/RETAIL/strmiids.lib
$(_PROJECTROOT)/cesysgen/sdk/lib/x86/retail/coredll.lib
$(_PROJECTROOT)/cesysgen/sdk/lib/x86/retail/commctrl.lib
$(_PROJECTROOT)/cesysgen/sdk/lib/x86/retail/ole32.lib
$(_PROJECTROOT)/cesysgen/sdk/lib/x86/retail/oleaut32.lib
$(_PROJECTROOT)/cesysgen/sdk/lib/x86/retail/uuid.lib
$(_PROJECTROOT)/cesysgen/sdk/lib/x86/retail/commdlg.lib
加完Build过之后这些库路径也会被填写到source文件中,但除非你对source文件非常熟悉,否则不要直接修改该文件,笔者就是因为直接修改source文件走了不少弯路,具体不再多说^_^

4.   加完第3步骤的lib文件,重新Build, 成功之后会在$(_FLATRELEASEDIR)目录下产生一个PlayWnd.exe文件,这是就是playwnd的可执行程序。下面介绍一下怎么将该程序加入到WINCE内核中。

5.   PB左边的ParameterView中打开Project.bib文件,加入一行:
PlayWnd.exe $(_FLATRELEASEDIR)/PlayWnd.exe NK S
并在Project.dat中增加下面一行:
Directory("/Windows/MYAPP"):-File("PlayWnd.exe","/Windows/PlayWnd.exe")
修改完该配置文件之后在PB中选择Build OS->Copy Files To Relsase Directory使配置文件生效,但此时$(_FLATRELEASEDIR)目录下的PlayWnd.exe可能已经被删除,必须重新Build 一个,然后在PB中选择Build OS->Make Runtime Image.这时产生的NK.BIN进入CE之后在/WINDOWS/MYAPP目录下就有PlayWnd.exe程序。

6.   如果想用DirectShow写个播放器,PLAYWND可是个好例子哦。。。

你可能感兴趣的:(WINCE5.0中PLAYWND的编译步骤)