如何用pb编写dll文件
在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指定了需要导出的函数名称
建立好这些文件之后,选择pb的build菜单的open build releasee directory,到达所在的目录,执行build -c,如果没有错误,就按照我们的要求生成文件了
如何正确的使用绝缘电阻?
氟离子电池中涉及O−O键形成的高容量双层钙钛矿氟氧化物正极
HyperPlay区块链分红理财APP开发
升级Ballistix存储器以增加多工游戏效能
一箭十三星:长征六号运载火箭发射成功
如何用pb编写dll文件
加热炉温度控制系统模糊智能实现
全在线蓄电池放电安全节能技术
怎么测安规陶瓷电容器好坏之分呢
四层板的常见PCB叠层
2022深圳国际家电与消费电子展招商正式启动
2020年中国叉式移动机器人市场最具影响力品牌榜单
集成直流对数放大器
烽火通信发布了2019年上半年报告营业收入119.81亿元同比增长7.07%
浪潮推出四种存储服务的分布式存储平台
中国第二大传感器企业宝座易主!14家公司新上市!国产传感器风起云涌!(附最新市值排名榜单)
FPGA或将取代CPU而成为机器人开发的新宠
中国移动计划2020年实现全国范围的5G商用
OPPO的当家花旦R系列不再更新了,OPPO R17、R17 Pro成绝唱
如何通过人工神经网络来实现图像识别功能