软件工程

本类阅读TOP10

·PHP4 + MYSQL + APACHE 在 WIN 系统下的安装、配置
·Linux 入门常用命令(1)
·Linux 入门常用命令(2)
·使用 DCPROMO/FORCEREMOVAL 命令强制将 Active Directory 域控制器降级
·DirectShow学习(八): CBaseRender类及相应Pin类的源代码分析
·基于ICE方式SIP信令穿透Symmetric NAT技术研究
·Windows 2003网络负载均衡的实现
·一网打尽Win十四种系统故障解决方法
·数百种 Windows 软件的免费替代品列表
·收藏---行百里半九十

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
使用PB编写dll文件

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

 

Windows CE中,所有的驱动程序都以dll形式存在。Dll文件可以用EVC来开发,也可以使用PB来开发,使用PB开发驱动程序,可以跟NK同时进行编译,要比EVC来的方便一点。这篇文章就只要介绍用PB来进行dll库开发的方法。

使用PB来开发,首先应该在你的工作平台下面建立一个目录,用来存放源文件,同时要修改dir文件,使得编译的时候能够进到源文件所在的目录。

编写dll的方法这里就不说了,反正就是写一堆的函数,这里主要解释一下使用PB编译,需要增加的文件。

第一个文件是sources文件,这里给出了一个sources文件的例子:

TARGETNAME=led 

使用TARGETNAME来指示生成目标的文件名(不包含扩展名,扩展名PB会自动加上)

RELEASETYPE=PLATFORM  

RELEASETYPE指示该文件将要生成的类型,一共有五个取值:

SDK:使用该类型将使得生成的目标文件被存储到%_PUBLICROOT%\Oak目录,而lib文件被放置到%_PUBLICROOT%\Sdk目录

DDK:使用该类型将使得生成的目标文件被存储到%_PUBLICROOT%\Oak目录,而lib文件被放置到%_PUBLICROOT%\Ddk

PLATFORM:使用该类型将使得生成的文件受平台控制

LOCAL:该类型使得生成的文件全部放置到当前路径

CUSTOM:该类型使得生成的文件放置到TARGETPATH制定的位置(也就是说必须要有TARGETPATH参数设置)

TARGETTYPE=DYNLINK

生成的目标类型,LIBRARY表示是一个lib库,DYNLINK则表示是dll,而PROGRAM则是一个exe文件

TARGETLIBS=\

   $(_COMMONSDKROOT)\lib\$(_CPUINDPATH)\coredll.lib

TARGETLIBS指示连接需要的库的名字

SOURCELIBS=mm.lib

SOURCELIBS指示将于某一个lib一起连接。上面一个lib是需要什么就取什么,而这个lib则是连接所有的。

DEFFILE=led.def

DLL文件的def文件名

INCLUDES=..\..\inc 

指定include的路径

SOURCES= \

led.c

指定参与该规则的所有的源文件

第二个则使makefile文件,该文件只需要!INCLUDE $(_MAKEENVROOT)\makefile.def就可以了,建议不要修改(我也不知道如何修改)

第三个文件是def文件,下面是一个该文件的实例

LIBRARY         led   

生成的库(.lib)文件名(PB自动生成扩展名)

EXPORTS        

       mm_init

EXPORTS指定了需要导出的函数名称

建立好这些文件之后,选择PBbuild菜单的open build releasee directory,到达所在的目录,执行build  -c,如果没有错误,就按照我们的要求生成文件了




相关文章

相关软件