zoukankan      html  css  js  c++  java
  • WM终端安装包制作

    一、INF文件介绍

         1.inf文件是由一系列段组成,段的定义放在广括号中,段名不能超过255字节,名字不区分大小写。每一个段描述了文件的目标地址,快捷方式,注册设置等信息,这些都会被写入.cab文件中。各个段可以随意排放次序。

         2.各段描述

            A.[Version]是必需的,可以指定应用程序的创建者和版本

                Signature="$Windows NT$"                               ; 必选项。用于指定 .inf 文件对哪个操作系统有效的字符串
                Provider="Test"                                                ;作者的名字
                CESignature="$Windows CE$"                           ;wince平台

            B.[CEStrings]必选项。指定应用程序名和默认安装目录的字符串替换或字符串关键字

                 CompanyName="XXXCompany"   ;字符串要注意,如果字串中有空格,引号,必须在外加"",如果没有,字串也可以不加
                AppName="TestApp"
                InstallDir=%CE1%\%AppName%    

                在inf文件中内置了几个固定的宏字串,这些宏字串都是指向windows mobile系统中的固定目录。在以下两个%之间的字就是宏。

                 %CE1%   Program Files  
                 %CE2%   Windows  
                 %CE4%   Windows\StartUp  
                 %CE5%   My Documents  
                 %CE8%   Program Files\Games  
                 %CE11%   Windows\Start Menu\Programs  
                 %CE14%   Windows\Start Menu\Programs\Games  
                 %CE15%   Windows\Fonts  
                 %CE17%   Windows\Start Menu

            C.[Strings]可选项,它用于定义一个或多个字符串关键字,也就是定义自己的宏字串的地方,如果项目中有用到的话,可以加上
                Manufacturer="Demo"

            D.[CEDevice]可选项。指定应用程序支持或不支持的平台,Windows CE 版本号、处理器类型值和不支持的平台的名称之类的信息。如果使用本机组件,则应包括为那些组件共同支持的每个处理器建立的子节,以便只将为每个处理器生成的 CAB 文件安装到使用相应处理器的设备上。 
            E.[SourceDisksNames]
                是指定源文件程序所在的磁盘路径。
                1=,"cab",,"D:\oasourcedir\programe\"

            F.[SourceDisksFiles]
                就是大家要打包的源文件清单,后面的=1就表示文件的路径,也就是[SourceDisksNames]中的1。
                demo.exe=1
                有多少个要打包的源文件都可以把名字加上即可,格式为:文件名.文件类型 = 1
            G.[DefaultInstall]
                CEShortcuts=CEShortcuts1
                CopyFiles=Files.Application

                就是安装程序到手机中时:CopyFiles参数表示安装时如何解压拷贝文件,AddReg参数表示安装时如何修改注册表。CEShortcuts参数表示如何在Wince桌面创建快捷方式。

                CopyFiles=后面跟着是字段名字,即你所要做的拷贝工作到底有哪些。AddReg=作用一样。      例如在范本中,CopyFiles=Files.Common就是告诉cabwiz.exe要做一个拷贝文件工作,
                需把一些文件拷贝到安装指定目录文件夹下,要拷贝的文件在[Files.Common]字段中。而AddReg=RegData表示安装程序还要修改注册表,修改的东西在[RegData]字段中。

           H.[Files.Common]
                安装拷贝文件到手机中,目标安装时需要拷贝哪些文件,应该与[SourceDisksFiles]中的文件名字一致。demo.exe,demo.exe,,0
           I.[Shortcuts] 
                关于应用程序桌面快捷方式设置:
                Demo App,0,demo.exe,%InstallDir%
                字段语法说明一下,四个域,域之间用逗号隔开,前三个域的内容必须填写。
                第一个域是快捷键名称,也就是在Wince桌面快捷方式名称。
                第二个域中0表示是文件,其他任何非零数表示为目录,
                第三个域就是快捷键的目标程序(目录),
                第四个域是可选域,是安放快捷键的目录,默认目录就是[DestinationDirs]中Shortcuts = "",你可以指定其他目录
           J.[RegData]
                 安装程序到手机步骤中时,修改注册表。

                HKLM,SOFTWARE\Microsoft\Shell\Rai\:CallAlert,BKBitmapFile,,"\Storage\Application Data\Home\iMac\call1.jpg" 
                第一个“,”之前表示注册表中的四大块的名字,直接用缩写就可以了,如范本中HKLM就代表HKEY_LOCAL_MACHINE,其他三个分别为HKCR,HKCU和HKU。

                第二个“,”之前表示你要修改的键的具体路径(如果没有会自动建立),即完整的项(key)名称,

                第三个“,”之前就表示你要具体修改的键(就是我们经常在修改注册表的文章中看到的Value Name),如果没有的话程序就会自动建立,

                第四个“,”之前表示值类型,目前我只懂得整数是0x00010001(见补充2),字符型数据这里你就不要填了,留着个“,”就可以了。最后就是你要填入的Value。

         3.完整示例如下:

     1[Version]
     2Signature="$Windows NT$"
     3Provider=solution
     4CESignature="$Windows CE$"
     5
     6[CEStrings]
     7CompanyName="公司名称"
     8AppName="应用程序名称"
     9InstallDir=%CE1%\Demo 安装目录
    10
    11[CEDevice]
    12VersionMin=5.00
    13VersionMax=5.00
    14
    15[DefaultInstall]
    16CEShortcuts=Shortcuts
    17CopyFiles=Files.Application
    18
    19[SourceDisksNames]
    201=,"cab",,"D:\终端\程序\项目部署\制作CAB\Resources\"
    21
    22[SourceDisksFiles]
    23demo.exe=1
    24
    25[DestinationDirs]
    26Files.Application=0,%InstallDir%
    27Shortcuts=0,%CE2%\Start Menu
    28
    29[Files.Application]
    30demo.exe,demo.exe,,0
    31
    32
    33[Shortcuts]
    34测试Demo,0,demo.exe,%CE11%

    二、CAB打包

           INF文件写好后,就可以用cabwiz.exe制作CAB安装包了。可以写一个批处理:@echo on
    "D:\终端程序\项目部署\制作CAB\cabwiz.exe" "D:\终端\程序\项目部署\制作CAB\miap.inf" /dest "D:\终端\程序\项目部署\制作CAB\Cabs" /err CabWiz.PPC.log /cpu ARMV5

    cabwiz.ddf、makecab.exe需与cabwiz.exe放在统一目录

    三、工具下载

          1.  cabwiz.exe  

          2. CABManager 3.0  绿色免注册版。遇到中文快捷方式乱码问题,可用该工具打开制作好的CAB包,然后保存即可

         

  • 相关阅读:
    大数据Hadoop第二周——配置新的节点DataNode及ip地址
    vue环境搭建详细步骤
    苹果电脑Mac系统如何下载安装谷歌Chrome浏览器
    点云的基本特征和描述
    ModuleNotFoundError: No module named 'rospkg'
    ROS的多传感器时间同步机制Time Synchronizer
    Spring Cloud 2020 版本重大变革,更好的命名方式!
    Spring MVC 接收请求参数所有方式总结!
    阿里为什么不用 Zookeeper 做服务发现?
    微服务之间最佳调用方式是什么?
  • 原文地址:https://www.cnblogs.com/xpengfee/p/1430755.html
Copyright © 2011-2022 走看看