wince如何使用批处理文件进行驱动编译

本文介绍了一种通过批处理脚本实现嵌入式系统中多个驱动程序自动编译的方法,并提供了具体步骤及示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  可能有时会遇到要同时编译BSP包下面的好几个驱动,一个一个手工点击编译是不是很麻烦,下面介绍分享一种通过批处理进行多个驱动编译的方法

  

call cls
@REM 设置环境变量,如WINCE的安装路径,BSP包的平台
set WMxxx=C:\WINCE600
set MyPlatform=SMDK6410
set Version=Retail


setlocal


pushd


C:


cd C:\WINCE600\PLATFORM\SMDK6410
call s60setenv.bat

@REM 这里你可以选择你要编译的驱动
cd %WMxxx%\platform\%MyPlatform%\SRC\DRIVERS\BATTDRVR
call build -c


cd %WMxxx%\platform\%MyPlatform%\SRC\DRIVERS\DISPLAY
call build -c


cd %WMxxx%\platform\%MyPlatform%\SRC\DRIVERS\keyboard
call build -c


cd %WMxxx%\platform\%MyPlatform%\SRC\DRIVERS\OTG
call build -c

@REM 不知道怎么回事,编译完之后不会自动更新到Release目录,这里自己拷贝过去
copy /Y C:\WINCE600\PLATFORM\SMDK6410\target\ARMV4I\retail\s3c6410_usbfn.dll %_FLATRELEASEDIR%
copy /Y C:\WINCE600\PLATFORM\SMDK6410\target\ARMV4I\retail\kbd.dll %_FLATRELEASEDIR%
copy /Y C:\WINCE600\PLATFORM\SMDK6410\target\ARMV4I\retail\s3c6410_disp.dll %_FLATRELEASEDIR%
copy /Y C:\WINCE600\PLATFORM\SMDK6410\target\ARMV4I\retail\battdrvr.dll %_FLATRELEASEDIR%

endlocal
pause

s60setenv.bat 文件定义如下

set __PLATFORMNAME__=SMDK6410
set __PROJECTNAME__=S60 @REM工程名字,自己修改
set _WINCEROOT=C:\WINCE600
set WINCEDEBUG=retail
set CPU=ARMV4I
set PBWORKSPACEROOT=%_WINCEROOT%\OSDesigns\%__PROJECTNAME__%
set _FLATRELEASEDIR=%_WINCEROOT%\OSDesigns\%__PROJECTNAME__%\RelDir\%__PLATFORMNAME__%_%CPU%_Release\
set PATH=%PATH%;C:\Windows\system32;C:\Windows;C:\Program Files\Microsoft Platform Builder\6.00\cepb\IdeVS
set _PROJECTROOT=%PBWORKSPACEROOT%\WINCE600\%__PLATFORMNAME__%_%CPU%
set PBWORKSPACE=%_WINCEROOT%\OSDesigns\%__PROJECTNAME__%\6410_2JAP.pbxml
set WINCE_BAT=%_WINCEROOT%\Public\Common\Oak\misc\wince.bat
set PBXMLUTILS="C:\Program Files\Microsoft Platform Builder\6.00\cepb\IdeVS\pbxmlutils.exe"
call %WINCE_BAT% %CPU% %__PROJECTNAME__% %__PLATFORMNAME__%
%PBXMLUTILS% /getbuildenv > %_TARGETPLATROOT%\AutoBuild%__PROJECTNAME__%.bat
call %_TARGETPLATROOT%\AutoBuild%__PROJECTNAME__%.bat





简介:CETool是一个WinCE的辅助程序,使用C语言和Windows API编写,作了一些特殊处理以同时支持WinCE5和WinCE6,主要实现shell中的功能,提供的各种操作涉及到文件系统、窗口管理、进程管理和流程控制几个方面,通过解析配置文件内容来执行相应的操作,属于一种脚本解析程序。程序有以下特点:1. 程序一般是在原路径执行,比如一开始就放置在\Storage Card\目录下,即打开后就以\Storage Card\为工作目录开始处理各项操作。考虑到在程序运程过程中可能要对程序所在分区(或磁盘)进行格式化(或者是移除SD卡)等操作,故添加了一项“自我复制到内存中运行”的功能,即启动后先检测工作目录是不是在内存虚拟出来根目录"\"下,如果不是则先对自身进行复制再重新加载复制后的可执行文件,以便后续的SD移除、或者格式化等操作。对于配置文件,因为是一开始就读进内存中的,所以无需进行复制。此功能一般都不需要使用,即直接在原来的路径运行即可,如需开始此功能,只需将配置文件文件名从CETool.ini改为_CETool.ini即可。 2. 程序在一次性加载完配置文件后,接着逐行去解析文件内容,遇到注释行或者是格式不正确的行则跳过该行,配置文件有以下特点: (1)配置文件无大小限制,仅取决于物理内存大小,支持Unicode与ANSI编码的文件格式; (2)配置文件中每行的长度无限制,但某些操作的参数对长度有一定限制,如创建目录时,作为目录名的参数的长度有限制(这是文件系统和API的问题)。 (3)各个操作放置的位置、出现的次数无限制。 (4)每一行中的子操作数量无限制。 (5)具有合理的严格性和纠错处理,每一行中在'='后边非关键字处可随意添加空格、制表符、逗号,不影响正常解析,关键内容可以加上引号(单引号和双引号的区别,将在后述提到),如包含空格的路径、参数等。详细介绍参数特殊说明。 3. 支持相对路径的表示方式。参考特殊说明。 4. 支持从文件读入并作为参数的方式(即配置文件中嵌入其它文件,嵌套层数无限制,一般为临时创建的文件,一些不确定参数可以先保存到临时文件,再用此程序读取)。参考特殊说明。5. 支持VB代码嵌入,方便变量使用、判断、循环(这些还有些问题需要解决,将在CETool v2.0中实现)。 此程序涉及内容: 此程序涉及到一些Windows和C语言的基础知识,包括文件系统、注册表、进程、线程、窗口、事件、消息、进程间与线程间通信、脚本、动态库、递归、回调、多维指针、函数指针、数据结构、加密算法等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值