【转】智能设备项目:将程序生成CAB文件 并将CAB部署到PocketPC等仿真设备

应用makecab.exe生成cab  如果修改了 .inf 文件或在 Support 目录中将控件数字签名,则需要修改 .ddf 文件。同时需要验证添加到 .inf 文件中的任何文件也同时添加到了 .ddf 文件中,否则安装时将找不到这些文件。以下是一个打包和展开向导生成cab.ddf 文件.OPTION EXPLICIT.Set CompressionType=MSZIP.Set UniqueFiles="of 阅读详情

原文:http://www.cnblogs.com/freeliver54/archive/2008/11/06/650303.html

 

 

智能设备项目:将程序生成CAB文件 并将CAB部署到PocketPC等仿真设备

大概步骤如下:
1.创建一个智能设备解决方案用于本打包演练
2.为解决方案添加智能设备 CAB 项目
3.对CAB项目进行相关自定义设置
4.生成CAB 文件(必要的时候对 CAB 文件进行签名)
5.将CAB文件部署到仿真设备
6.卸载刚才的程序(因为是仿真设备 其实不用卸载内存中的程序)
==========================================

1.创建一个智能设备解决方案用于本打包演练
----------------------------------------
具体步骤可以参看
[引]智能设备开发演练:创建用于设备的 Windows 窗体应用程序

2.为解决方案添加智能设备 CAB 项目
---------------------------------
a. 打开现有的智能设备项目,并确保“解决方案资源管理器”可见。
b. 在“文件”菜单上指向“添加”,然后单击“新建项目”。
   出现“添加新项目”对话框。
c. 在左侧的“项目类型”窗格中展开“其他项目类型”节点,
   再单击“安装和部署”。
d. 在右侧的“模板”窗格下选择“智能设备 CAB 项目”。
   这是唯一可用于智能设备的 CAB 项目类型。
   其他项目类型仅用于桌面解决方案。
e. 在“名称”框中,键入 CABProject,然后单击“确定”。

  此 CAB 项目即会添加到您的解决方案,
  并显示在“解决方案资源管理器”中。
  现在显示“文件系统编辑器”的两个窗格

3.对CAB项目进行相关自定义设置
-----------------------
(1).设置运行文件的安装位置
a.在文件系统编辑器的
  “目标计算机上的文件系统”窗格下
   的Program Files 文件夹 上单击右键
b.选择“添加”下的“文件夹”选项
  建立该程序的文件夹名如为“Form1”
c.在该程序的文件夹下 添加相关用于执行的文件等
(2)添加快捷方式到PocketPC开始菜单下“程序”文件夹
a.右击“目标计算机上的文件系统”
b.添加“特殊文件夹”下的“start menu文件夹”
c.在该文件夹下建立程序的快捷方式

其他自定义设置 如添加注册表项 等 可以参见其他资料

4.生成CAB 文件(必要的时候对 CAB 文件进行签名)
---------------------
a.在“生成”菜单上单击“生成 CABProject”。
   - 或 -
  在“解决方案资源管理器”中右击“CABProject”,再单击“生成”。
b.在“文件”菜单上单击“全部保存”。

Smartphone 解决方案的 CAB 文件在部署到最终用户的设备上之前必须进行数字签名。
基于 Windows Mobile 2003SE 和更早版本的 Pocket PC 解决方案不支持数字签名。
有关更多信息,请参见如何:对 CAB 文件进行签名(设备)。
为智能设备 .cab 文件签名:
a.在“解决方案资源管理器”中右击智能设备 Cab 项目,
  然后在快捷菜单上单击“属性”。
b.在“生成”页上选择“Authenticode 签名”。
c.单击“从存储区选择”。
d.在“选择证书”对话框中:
  如果所需的证书显示在列表中,请选择该证书,然后单击“确定”关闭对话框。
  如果所需的证书未出现在列表中,请单击“管理证书”,
  打开“管理证书”对话框。
  有关更多信息,请参见如何:在设备项目中导入和应用证书。
  完成证书获取后,在“选择证书”对话框中单击“确定”。
  该证书出现在“生成”页的“证书”框中。
e.在“生成”页上单击“确定”。


5.将CAB文件部署到仿真设备
--------------------------
(1).设置共享文件夹
a. 在开发计算机上,创建一个在开发计算机和设备仿真程序之间共享的文件夹。
   如E:/CAB 并将刚才的CAB文件放入该文件夹下
b. 点选VS2005的“工具”菜单下的“设备仿真器管理器”
   在可用的仿真程序列表中 选择PocketPC2003SE仿真程序并右键单击
   选择“连接” 打开PocketPC2003SE仿真程序的运行界面  
c. 在设备仿真程序运行界面的“文件”菜单上单击“配置”。
d. 在“常规”选项卡的“共享文件夹”框中,
   键入或定位到开发计算机上的共享文件夹如E:/CAB。
e. 单击“确定”。
(2)测试并打开 Pocket PC 仿真程序上的共享文件夹
a. 在 Pocket PC 仿真程序中“开始”菜单打开“资源管理器”。
b. 在上方的下拉三角处 点击 并选择“我的设备”。
  “存储卡(Storage Card)”项就是共享文件夹。
(3)安装CAB文件
a. 点击并打开“存储卡(Storage Card)”文件夹
b. 点选该文件夹下的CAB 文件,
   Windows CE 将解开该 CAB,
   并将应用程序安装到设备上
(4)查看和运行程序
a. 在程序的安装位置 找到刚才安装的程序
   如PocketPC的“资源管理器”下“我的设备”下的
   “Program Files”文件夹下的相关程序文件夹
b. 单击该程序文件夹下的相关可运行文件
   查看该程序的运行效果

6.卸载刚才的程序(因为是仿真设备 其实不用卸载内存中的程序)
----------------------------
a.点选Pocket PC“开始”菜单下的“设置”
b.在“设置对话框”中 点选屏幕下方的“系统”标签
c.切换后 点选“删除程序”图标
d.在“存储内存中的程序”列表中
  选择刚才安装的程序 并点击“删除”
e.点选“确认删除” 等待删除 查看删除效果 是否删除

 

 

 

关于制作Cab文件中Unicode的问题

 

其实VS来制作Cab不是什么难事,资料到处都是,很多书上也千遍一律的介绍,可有些中文书中并没有根据中文版vs特有的一些特点,诠释一些特别的东西。所以有人出现一些小问题,怪出书的介绍不详细....。还是要多动动脑子好。问题不大,也不难。

 

比如:

 

Error: The INF file contains Unicode characters that could not be converted correctly to ANSI 

 

 

其实只要谁都能看懂,都知道有中文导致的,于是又很多人去修改inf。改来该去还是不行,其实你只要想想,inf又不是能自己写的,修改它有用吗?当然不行,它是在编译的时候自动产生的。

 

可能也有很多人知道去该属性,可就是没有发现在哪改,其实你只要想想,你是怎么来通过属性来修改一个form的相关属性的不就行了吗?

 

它本身就是一个"项目",所以要先选中这个项目,然后去看属性就能看到有那么一项中文,也就是inf中出项的东西。如图:

 

在“解决方案资源管理器”中点击 CAB 项目的名称,在“视图”菜单上单击“其他串口”中的“属性窗口”,这个“属性窗口”就是博主在文章结尾说的“图”。将这个“属性窗口”里面的“Manufacture”、“ProductName”名称都修改成英文的,就可以正确生成CAB工程。快捷方式也必须不能含有中文字符。

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/fumingxia19/archive/2008/05/26/2483999.aspx

 

 

智能设备项目:将程序生成CAB文件 CAB部署PocketPC仿真设备 大概步骤如下:1.创建一个智能设备解决方案用于本打包演练2.为解决方案添加智能设备 CAB 项目3.CAB项目进行相关自定义设置4.生成CAB 文件(必要的时候对 CAB 文件进行签名)5.CAB文件部署仿真设备6.卸载刚才的程序(因为是仿真设备 其实不用卸载内存中的程序)==========================================1.创建一个智能设备解决 阅读详情

相关推荐

Windows Mobile 打包部署设备

1.创建一个智能设备解决方案用于本打包演练 具体步骤可以参看 [引]智能设备开发演练:创建用于设备Windows 窗体应用程序 2.为解决方案添加智能设备 CAB 项目 a. 打开现有的智能设备项目确保“解决方案资源管理器”可见。 b. 在“文件”菜单上指向“添加”,然后单击“新建项目”。    出现“添加新项目”对话框。 c. 在左侧的“项目类型”窗格中展开“其他项目

hediping9811的专栏 797

移动设备应用程序开发入门一:创建用于设备Windows 窗体应用程序打包进行部署 (二)...

移动设备应用程序开发入门一:创建用于设备Windows 窗体应用程序打包进行部署 (二) 2011年02月24日   [b]生成和调试应用程序[/b][b][/b]   此时,您会发现与桌面项目的不同之处。在设备项目中,通常可以从若干个目标中选择用来运行项目的位置。在此演练中,选择 Pocket PC 仿真程序。如果开发计算机中已经有一个受支持的物理设备,也可以选择该物理设备...

mnu163ak 201

Visual Studio 2005 智能设备开发

Visual Studio 2005 为开发在基于 Windows CE 的智能设备(如 Pocket PC 和 Smartphone)上运行的软件提供丰富的集成支持。您可以使用 Visual C# 或 Visual Basic 来编写在 .NET Compact Framework 上运行的托管应用程序,或可以使用 Visual C++ 来编写本机应用程序。无论选择何种语言...

weixin_34365417的博客 195

顺序表(Sequential List)详解:从数组到 C 语言实现

顺序表是用连续存储单元依次存储数据元素的线性结构,数组则是其最常见的实现方式,两者本质相同、仅视角不同——数组关注物理存储,顺序表关注逻辑关系。顺序表支持随机访问 $O(1)$,但插入删除需移动元素,效率为 $O(n)$。本文用 C 语言静态数组完整实现了顺序表的初始化、增删改查操作,帮助初学者在不涉及指针的前提下理解其核心原理,为后续学习动态顺序表打下基础。

Guangyu536的博客 308

windows 驱动实例分析系列: HidHide驱动分析-HidHideCLI 篇(三)

`HID.cpp` 模块实现了完整的设备枚举与信息采集,这些功能与 GUI 版本共享相同的核心逻辑,但在输出格式上存在差异——CLI 版本输出 JSON,而 GUI 版本填充树形控件。

王马的博客 130

【回溯】【中等】全排列/子集/电话号码的字母组合/组合总和/括号生成/单词搜索/分割回文串

【待更新】

2301_81831660的博客 51

苍穹外卖【day10| 订单状态定时处理】

本文设计实现订单状态自动流机制,通过定时任务处理超时订单:15分钟未付款自动取消,派送超60分钟则标记为完成,避免状态卡死。采用MyBatis动态SQL精准更新字段,减少数据库压力。定时任务与WebSocket互补——前者兜底,后者实时通知,保障系统可靠性与用户体验。

2503_94545876的博客 64

cmake教程

单/多个源文件、不同目录下的源文件、组织架构(源文件/头文件/对象文件/elf文件/库文件)、库的编译控制与链接(.so/.a)、编译选项、控制选项(生成部分文件/编译部分代码)

Wangshijie1015的博客 59

Qt的常用类QList--序列数据管理

因此可以采用下标来进行索引进行快速的访问。而QVector是Qt对所有数组的封装,它元素的存储位置彼此相邻,也就是说它是以数组的形式进行存储的,它的插入删除操作常常伴随着内存的移动,所以效率上没有QList高。QlinkList我们可以把它当成一个链表,它以非连续的内存块进行保存数据,所以它不能使用下标进行访问,它更适合于数据的插入操作。通过list.at()函数和下标,它的区别就是通过下标的时候,QList会对它的数据进行一次拷贝,也就是内存的一次复制,所以我们通过下标这种方式效率不高。

qq_42831443的博客 117

75 条文章索引被一条 add 清成 1 条,退出码还是 0:tri-article 的 index.py 我读了 205 行

以一次真实清库事故切入,逐段复现 tri-article 索引脚本的三处静默失败给出可运行加固代码(严格加载抛错、原子写 os.replace、长度差预筛的软去重)。附带 dedup 省略 --slug 时判定退化为「slug 长度 ≤2」、search 只搜 title、真实 75 条索引中 6 条在 domain 维度不可达、save_index 零调用等实测结论,用 65/75 的哈希自证说明历史失配来自改标题未回写。

三声三视的博客 159

33 链表排序

给你链表的头结点head,请将其按排列返回。[1,2,3,4]head = [][]你可以在O(n log n)时间复杂度和常数级空间复杂度下,对链表进行排序吗?

weixin_52079669的博客 212
上一篇: 【转】Cygwin 交叉编译 ffmpeg for WinCE
下一篇: 【转】COM组件开发实践(一)
code09
博客等级 码龄18年 31粉丝 56原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值