如何禁止安装Cab包时选择安装在存储卡

原创 2007年10月09日 08:44:00

    大家都知道,当您在Windows Mobile机器上安装程序时,如果机器上装有存储卡,会弹出一个窗口让您选择安装路径,即本机或存储卡上。但是,有时候,可能由于我们应用的特殊性,并不希望用户将软件安装在存储卡上,那么该如何去做呢?

       其实,微软的SDK已经给出了答案,在“Adaptation Kit User 's Guide  > Utilities  > CAB Wizard  > Information File  > Device-Side Application Installation Options”中,微软写到:

       To disable user-selected installation volume prompting Do not specify an %installdir% variable in the [CEStrings] section of the .inf file. If this variable is not found, the device will not prompt the user. 

       我们通常在编写打Cab包的inf文件时,都会在[CEStrings] 下定义%InstallDir%,如:

       [CEStrings]

InstallDir  = %CE1%/%ProviderStr%/%AppName%

AppName     = "Test"

 

这时,当安装Cab包时,发现有InstallDir,机器又安装了存储卡时就会提示用户选择是否安装于存储卡,那么我们要做的就是不给InstallDir赋值,即删去上面那句,

[CEStrings]

AppName     = "Test"

 

这样即使机器上安装了存储卡,那么安装Cab包时也会直接安装于本机[DefaultInstall][DestinationDirs]配置的位置。

但是,这样做要特别注意的是,对于控制安装进程的Setup.dll的编写,在编写该DLL时,我们常常用到“LPCTSTR     pszInstallDir”这个参数,因为它标识了Cab包安装时软件实际安装的路径。即InstallDir指定的路径或者存储卡下InstallDir指定的路径,但是现在由于没有指定InstallDir,故pszInstallDir将始终为空值,在代码里要相应调整。其实,既然已经强制安装了,那么路径实际上已经固定,也就可以用些常量来表示路径了。

看技术看累的吧,快去我的非技术Blog--猫思猫想(http://hi.baidu.com/doglovecat

 

应用程序安装在sd卡还是内存选择及设置

主要内容是介绍如何使得自己开发的android程序安装到外置储存设备(如sd卡),安装到外置储存设备(如sd卡)的程序有哪些特别的地方、兼容性、哪些软件最好安装在内存中,哪些最好安装在外设上。 ...
  • feifei20081014
  • feifei20081014
  • 2013-12-27 22:17:38
  • 483

使用C++安装Windows更新文件(.cab文件)

  • 2015年12月03日 21:58
  • 11.72MB
  • 下载

INF打cab包总结

安装信息(Setup Information)文件是Windows系统支持的一种安装信息存放文件,一般以INF作为扩展名,因此也叫INF文件。安装信息INF文件与Windows内建的安装服务引擎(AP...
  • chenlycly
  • chenlycly
  • 2015-03-29 12:44:07
  • 4145

Windows下安装cab文件

下载了Windows PowerShell 64bit的版本, 下载地址: http://www.microsoft.com/en-us/download/details.aspx?id=20430 ...
  • pansanday
  • pansanday
  • 2014-04-25 22:43:25
  • 4787

APP安装支持安装到SDCard

1.只有Android2.2及以上版本支持APP安装到SDCard,也就是说Androidmanifest.xml中的android:minSdkVersion属性值大于等于8 2.在And...
  • zuolongsnail
  • zuolongsnail
  • 2012-01-09 15:03:57
  • 10042

制作CAB包

制作CAB包inf文件INF是Device INFormation File的英文缩写,是Microsoft公司为硬件设备制造商发布其驱动程序推出的一种文件格式,INF文件中包含硬件设备的信息或脚本以...
  • CHIHUN_LOVE
  • CHIHUN_LOVE
  • 2016-12-30 16:01:09
  • 885

cab打包详解

在windows mobile开发嵌入式软件,不论是j2me,还是其它语言写的什么程序,最后都可以用cabwiz.exe这个打包安装的工具来制作打包安装程序。笔者最近通过开发一个项目对它的体会是:不仅...
  • benny1315
  • benny1315
  • 2007-11-29 17:37:00
  • 374

从网页上下载控件时制作CAB包的方法

    Internet软件分发单位是“软件包”,它由包含.INF文件或软件分发.OSD文件(或两者都包括)的.CAB文件所组成。一个分发单位也可以包含软件组件,如 ActiveX 控件(.OCX)、...
  • joze
  • joze
  • 2007-03-13 22:23:00
  • 1245

如何制作WinCE程序安装包(cab压缩包)

转自:http://blog.sina.com.cn/s/blog_49aef14b0100ef89.html~type=v5_one&label=rela_nextarticle 如何制作WinC...
  • wocao1226
  • wocao1226
  • 2012-01-17 13:25:58
  • 1255

Android 程序默认安装到sd卡

在AndroidManifest.xml里面修改下面语句android:installLocation = “preferExternal” 即可。 参数解释: auto:程序可能被安装在外部存...
  • SebastianMichaelis
  • SebastianMichaelis
  • 2015-05-27 09:46:12
  • 799
收藏助手
不良信息举报
您举报文章:如何禁止安装Cab包时选择安装在存储卡
举报原因:
原因补充:

(最多只允许输入30个字)