WinCE下冷启动程序自动安装装载
为了避免冷启后频繁安装应用程序和环境包,想到冷却后保存系统或冷却后自动重新安装。
在网上查阅大量资料,冷启后自动恢复系统不用重新安装的方法比较多,但有人说不可靠,因此首选冷启后自动重新安装这个方法来解决。下面是步骤
1. MC3000的机型应用程序的安装需要以下几个CAB文件:
a) 应用程序打包成CAB文件(也可以不做安装包,具体见后面详解);
b) NETCFv2.wce5.armv4i.cab,这是.NET Compact Framework v2.0的一个安装包;或者NETCFv35.wce.armv4.cab ,这是.NET Compact Framework v3.5 的一个安装包;
一般而言,上述安装包会存放在如下目录:C:\Program Files\Microsoft.NET\SDK\CompactFramework\v3.5\WindowsCE。
c) symbol.all.arm.cab,这是SYMBOL的一个安装包,在Symbol提供的软件开发包中;
d) sqlce30.dev.CHS.wce5.armv4i.CAB,sqlce30.repl.wce5.armv4i.CAB,sqlce30.wce5.armv4i.CAB,这三个CAB安装包是SQL CE数据库必须的。如果不是有SQL CE 数据库,则这些文件不需要安装。
System_SR_CHS.CAB,这是调试用到的一个安装包,不是必须的。
用.NET制作的应用程序部署到PDA上之前,必须安装.NET Compact Framework v2.0 或者.NET Compact Framework v3.5。由实际设备项目程序开发的版本来定,也就是上面的安装包,此外还要装SYMBOL的一个安装包(symbol.all.arm.cab),这些都是运行应用程序必须的环境。如果没有用到SQL CE,则其他几个安装包不是必须的。
2. 防止CAB文件自动重置的设置
简单的,为了防止cab在安装完毕后消失,可设置文件为只读。本方法通过cpy文件来实现cab文件的一个副本,安装副本,副本自动消失来实现的。
(1)首先编写CPY文件。新建一个记事本,然后在上面写下遵循以下格式的语句。
这里以WinCE4.2 .net ,Symbol MC3000为例:
\Application\InstallApp\netcf.all.wce4.armv4.cab1 > \netcf.all.wce4.armv4.cab
\Application\InstallApp\symbol.all.arm.cab1 > \symbol.all.arm.cab
\Application\InstallApp\pda.con > \pda.con
\Application\InstallApp\App2.lnk > \Windows\桌面\App.lnk
pda.con:为PDA程序的配置文件
App2.lnk:为应用程序的快捷方式,copy到桌面后,方便登录应用程序.
保存为.cpy文件的格式,在实际应用中,我是加入到application下的Demo.cpy文件中。
说明cab安装文件和应用程序配置文件PDA.con和快捷文件都保存在PDA的\application\AppInstall目录下,该目录下文件掉电或冷启后依旧存在。
AppInstall目录可以是自己定义的其它名称。
(2)然后编写REG文件。
; For Windows CE .NET devices
[HKEY_CURRENT_USER\Software\Symbol\Startup\Programs\Prog10]
"Name"="\\windows\\wceload.exe"
"Command"="/noaskdest \\netcf.all.wce4.armv4.cab"
"Continue"=dword:0
"ColdBootOnly"=dword:1
[HKEY_CURRENT_USER\Software\Symbol\Startup\Programs\Prog11]
"Name"="\\windows\\wceload.exe"
"Command"="/noaskdest \\symbol.all.arm.cab"
"Continue"=dword:0
"ColdBootOnly"=dword:1
其中,"Command"这一行最后面是安装包的路径。如果有多个安装包,其安装的前后次序可能是跟Prog14有关,即第2个REG改成Prog15,第3个Prog16……这一点没有经过验证,反正我是这么做的。
将前面准备好的CAB文件同编写好的CPY / REG文件放到PDA的Application\AppInstall目录下,就实现了在手持终端系统冷启动后将Application路径下的CAB文件自动复制到\windows路径下,并且自动安装。
应用程序可以不制作安装包,直接把运行程序及快捷方式放在Application目录下,并在CPY文件中建立快捷方式的自动复制语句将快捷方式复制到桌面上,这样PDA冷起后,直接点击桌面的快捷方式就可以运行应用程序了。
3. 冷却自动安装设置
如果需要在设备重启并安装完所需的程序后,自动执行程序,则在PC上新建一个扩展名为RUN的文件,内容为该程序的路径,比如:
\Program Files\MyApp\MyApp.exe
然后将该文件复制到设备的\Application\Startup\中。再检查一下Application目录中是否有STARTUP.REG,其内容是否为:
[HKEY_CURRENT_USER\Software\Symbol\Startup]
"Path"="\\Application\\Startup"
"NoSetup"=dword:1
如果没有则新建一个。
4. 冷启PDA测试
最后冷启动设备(1+9+开机键),设备进入系统后就会自动安装并执行相应程序了。如果发现有不需要启动的程序,可在\Application\Startup\下检查其余的RUN文件内容,不需要的就删除
几个配置文件
(1)说明文件(不是必需)
简单地,把本说明文件下的文件appReg.reg、Demo.cpy、STARTUP.REG和说明.txt拷贝到Application目录下
Startup文件夹和InstallApp文件夹也拷贝到Application目录下
PDA冷启后首先启动system boot,之后出现矫正触摸屏,矫正后按“Enter”键,接着自动安装程序,安装过程中不要取消安装
安装完毕后,PDA自动启动仓库扫码终端程序。输入密码、在正式登录程序前,请设置PDA的IP地址。设置好IP地址(不要重复)
后,等待PDA网络连接图标提示连接上网络后,再进入仓库扫码程序。
1、appCpy.cpy是把文件拷贝到windows目录下,以被安装。复制到设备的Application目录;后用新demo.cpy覆盖原机器中的demo.cpy
2、appReg.reg是把拷贝后的安装文件运行安装,不提示安装目录。将REG文件复制到设备的Application目录;
3、appRun.run是安装后自动运行,拷贝到\Application\Startup\中,再检查一下Application目录中是否有STARTUP.REG;
后用StartMenu.run覆盖旧的文件。PDA中有此文件。
4、首先检查\Application目录中是否存在STARTUP.REG,如果不存在,把本文件拷贝过去。将REG文件复制\Application目录中
5、查看是否存在\Application\STARTUP.REG文件,没有创建一个。
最后冷启动设备(1+9+开机键),设备进入系统后就会自动安装并执行相应程序了。
如果发现有不需要启动的程序,可在\Application\Startup\下检查其余的RUN文件内容,不需要的就删除
最后
1、应用程序可以不制作安装包,直接把运行程序及快捷方式放在Application目录下,并在CPY文件中建立快捷方
式的自动复制语句将快捷方式复制到桌面上,这样PDA冷起后,直接点击桌面的快捷方式就可以运行应用程序了。
2、cab文件放在\Application\AppInstall目录下。如果设为只读,在cpy文件中就不需要拷贝。
为了能cpy快捷方式,可在该目录下放入应用程序的快捷方式;
3、为了在桌面中有应用程序的快捷方式,可在cpy中,把应用程序快捷方式拷贝到桌面中。
运行注册表工具regedit.exe
[HKEY_LOCAL_MACHINE\init\BootVars] ,E:增加此项,为注册表修改后回写到Flash中
"RegistryFlags"=dword:1
以上绝大部分不用更改,只需要查对,一般只要修改[G]项及增加[E]项,达到注册表更改后保久到flash中
(2)demo.cpy
\Application\InstallApp\netcf.all.wce4.armv4.cab1 > \netcf.all.wce4.armv4.cab
\Application\InstallApp\symbol.all.arm.cab1 > \symbol.all.arm.cab
\Application\InstallApp\pda.con > \pda.con
\Application\InstallApp\App2.lnk > \Windows\桌面\App.lnk
(3)app.reg
; For Windows CE .NET devices
[HKEY_CURRENT_USER\Software\Symbol\Startup\Programs\Prog10]
"Name"="\\windows\\wceload.exe"
"Command"="/noaskdest \\netcf.all.wce4.armv4.cab"
"Continue"=dword:0
"ColdBootOnly"=dword:1
[HKEY_CURRENT_USER\Software\Symbol\Startup\Programs\Prog11]
"Name"="\\windows\\wceload.exe"
"Command"="/noaskdest \\symbol.all.arm.cab"
"Continue"=dword:0
"ColdBootOnly"=dword:1
(4)startup.reg(查看是否存在,如果不存在,需要添加)
[HKEY_CURRENT_USER\Software\Symbol\Startup]
"Path"="\\Application\\Startup"
"NoSetup"=dword:1
(5)app.run(为开机自动启动的应用程序名,程序路径不同,配置内容不同)
\Application\InstallApp\App.exe
注意目录"\"在不同的配置文件中,有时以"\\"出现,有时单以"\"出现,找做就是
PDA的IP地址可以保存到.reg文件中,symbol后来的机器中在设置IP地址后,可以把IP地址相关的信息保存到.reg文件中,以后冷启后就不必重新设置IP地址.ce4.2版本中没有发现这个功能(是不是保存的地方不一样?)
转载于:https://www.cnblogs.com/lijiajin1987/archive/2012/08/07/2626446.html
WinCE下冷启动程序自动安装装载相关推荐
- Win-Get——Windows下的自由软件自动安装程序
来源:Solidot 在Linux上,可以方便的通过apt-get来获得软件.现在Windows专用的Win-Get-- 一个免费的命令行自动安装程序,可以在"视窗"系统上实现相同 ...
- ubuntu下JDK的自动安装和手动安装
最近帮别人安装Hadoop系统,遇到了各种各样的问题,在安装jdk的时候遇到源不好使,手动安装无法识别环境变量等.现就JDK安装的问题和方法归纳如下. ubuntu下安装JDK有两种办法,一种是自动安 ...
- windows操作系统,python环境下django的自动安装
首先,在Windows操作系统下安装python,完成python环境的搭建.(我看有的博客需要配置环境变量,其实不必要,因为我们在安装的时候只要勾选如下图所示即可避免不必要的麻烦) 第二步,使用快捷 ...
- Kali下卸载程序和安装程序的方法
Kali下卸载程序的方法 一.kali中主要为2种卸载方法: 1.apt 2.dpkg 使用apt的方式有: apt-get remove 软件名apt-get remove --purge 软件名( ...
- Ubuntu/CentOS下使用脚本自动安装 Docker
Ubuntu.Debian 系列安装 Docker 系统要求 Docker 支持以下版本的 Ubuntu 和 Debian 操作系统: Ubuntu Xenial 16.04 (LTS) Ubuntu ...
- [导入]在C++ Builder3下实现程序自动运行的方法
文章来源:http://blog.csdn.net/nm/archive/2000/08/10/4403.aspx 转载于:https://www.cnblogs.com/zhaoxiaoyang2/ ...
- 制作WinCE平台下Pocket PC安装程序
看论坛上经常有人问,如何从桌面系统下安装WinCE平台下Pocket PC应用程序.特此把以前参考VCHelp上雷神的安装制作写的一个Win32 SDK安装WinCE应用系统的程序,放了上来.希望能为 ...
- python cv2模块安装_Python运行脚本前,自动安装需要的模块包
在服务器上部署Python程序时,往往需要先安装很多需要的模块包.如果一个一个安装就会出现忘记的情况.或者新增加某个新的模块时,也可能会忘记安装. 这里先讲一下怎么通过Python程序自动安装. 以下 ...
- 给深受【应用程序未安装】困扰并且找不到【smdl2tmp1.asec】系统的机友们
2019独角兽企业重金招聘Python工程师标准>>> 在经历了一个多礼拜各种尝试之后,终于成功解决了安卓2.1系统下"应用程序未安装"的问题~ 过程如下: 我的 ...
最新文章
- python怎么重新开始_人人都是数据科学家从新开始用Python学习数据科学的完整教程P3...
- 深入分析Synchronized原理(阿里面试题)
- 你是一个有价值的产品经理吗?
- o.s.b.d.LoggingFailureAnalysisReporte报错
- 多重环境下web.config配置管理解决方案
- 将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
- 美赛整理之Matlab读取全球海洋温度数据并显示干货
- TypeId和IidManager关系
- 记所内部“与顶级会议作者面对面”系列学术活动交流感受
- b站弹幕姬python_自用 Bilibili 弹幕姬 for macOS
- 网站定时监控平台有哪些 7款好用的实时监控网站工具
- chrony时间同步配置
- httpclient实现模拟登陆126邮箱
- python基础之温度转换
- 无法导入android 工程--提示项目已经存在
- IE不能上网浏览的问题
- 大数据智能营销系统的作用
- STM32 使用 SHT2x 温湿度传感器
- 机器人编程要学哪些知识
- Spring MVC更多家族成员----文件上传---06