Silent Install
来源:互联网 发布:波士顿矩阵分析耐克 编辑:程序博客网 时间:2024/06/06 16:50
一、头文件和库:
1. include: #include <SWInstApi.h>
#include <SWInstDefs.h>
2. lib: SWInstCli.lib
3.SDK-plugin: 需要从网上下载SDK的扩展包
http://www.forum.nokia.com/info/sw.nokia.com/id/53439e01-f605-4491-96f4- 62d003bd4c0c/S60_3rd_SDK_MR_API_Plug-In_Pack1.zip.html
二、需要用到的能力
Capability requirements: TrustedUI
三、SwiUI命名空间中的类
静默安装和卸载所有的类都在SwiUI命名空间下。
1. SwiUI::RSWInstLauncher 静默安装与卸载文件的基类
主要成员函数有:
Connect()和Close(),用于连接和关闭服务器资源。
Install()和Uninstall(),用于安装和卸载文件,有多个重载函数。
SilentInstall()和SilentUninstall(),用于静默安装和卸载文件,也有多个重载函数。
2. SwiUI::RSWInstSilentLauncher 静默安装与卸载文件的类
派生自RSWInstLauncher,重写了一个Connect()函数。
3. SwiUI::TInstallOptions 安装的选项配置类
变量类型
成员变量名
含义
TPolicy
iUpgrade
是否可升级
TPolicy
iOptionalItems
可选配置项
TPolicy
iOCSP
是否检查网络的签名认证状态
TPolicy
iIgnoreOCSPWarnings
发生OCSP警告时是否继续安装
TPolicy
iUntrusted
是否安装未签名的程序
TPolicy
iPackageInfo
是否省略包的信息
TPolicy
iCapabilities
是否自动给用户能力
TPolicy
iKillApp
安装完成后是否删除源安装程序
TPolicy
iOverwrite
是否允许覆盖原文件
TPolicy
iDownload
是否可下载
TBuf
iLogin
下载用户名,最大长度KSWInstMaxUserNameLength
TBuf
iPassword
下载密码,最大长度KSWInstMaxPasswordLength
TChar
iDrive
安装的目标驱动器
TLanguage
iLang
选择的语言
TBool
iUsePhoneLang
强制使用手机上的默认语言
TPolicy
iUpgradeData
是否更新所有数据
其中TPolicy的定义如下:
enum TPolicy
{
EPolicyAllowed,
EPolicyNotAllowed,
EPolicyUserConfirm
}
4. SwiUI:: TInstallReq 安装的参数配置类
TBuf8<KMaxDataTypeLength> iMIME; // Mime type
TUint iCharsetId; // Id of char set
TFileName iSourceURL; // Source URL / source dir
TUint iIAP; // Access point
其中Mime type定义如下:
SwiUI::_LIT8 (KSisxMimeType,"x-epoc/x-sisx-app")
SwiUI::_LIT8 (KSisMimeType,"application/vnd.symbian.install")
SwiUI::_LIT8 (KPipMimeType,"application/x-pip")
SwiUI::_LIT8 (KJadMIMEType,"text/vnd.sun.j2me.app-descriptor")
SwiUI::_LIT8 (KJarMIMEType,"application/java-archive")
SwiUI::_LIT8 (KJavaMIMEType,"application/java")
SwiUI::_LIT8 (KJarxMIMEType,"application/x-java-archive")
5. SwiUI::TOpUninstallIndexParam 卸载的参数配置类
TUid iUid
TInt iIndex
6. SwiUI::TUninstallOptions 卸载的选项配置类
TPolicy iKillApp
TPolicy iBreakDependency
四、代码示例
//construct
SwiUI::RSWInstSilentLauncher iLauncher;
SwiUI::TInstallOptions iOptions;
SwiUI::TInstallOptionsPckg iOptionsPckg;
// Connect to software installer server
User::LeaveIfError(iLauncher.Connect());
//options setting
iOptions.iUpgrade = SwiUI::EPolicyNotAllowed;
iOptions.iOCSP = SwiUI::EPolicyAllowed;
iOptions.iDrive = 'C';
iOptionsPckg = iOptions;
//start to intall
iLauncher.SilentInstall( iStatus, KPathAndFileNameOfJarFile, iOptionsPckg );
SetActive();
五、参考资源: http://wiki.forum.nokia.com/index.php/File:SilentInst.zip
六 其他相关内容
_LIT(KMyAppName, "z://system//Apps//AppInst//Appinst.app");
TBuf<15> filePath;
filePath.Append(_L("E://MyJar.jar"));
RApaLsSession sess;
sess.Connect();
CApaCommandLine * cmd=CApaCommandLine::NewL();
cmd->SetLibraryNameL(KMyAppName);
cmd->SetDocumentNameL(filePath);
cmd->SetCommandL(EApaCommandRun);
sess.StartApp(*cmd);
sess.Close();
Pkg file format.
"../../../../Epoc32/release/thumb/urel/jarInstall.exe"-"e:/system/apps/myapp/jarInstall.exe",FILERUN,RUNINSTALL
Jar&Jad MIDLet:
http://www3.symbian.com/faq.nsf/0/2E2F00D52D2BF0D480256FAF003F920C?OpenDocument
- Silent Install
- Install Shield Silent Installs
- Silent Install / Uninstall
- MySQL Silent Install
- silent install DB
- 【转】Symbian Silent Install/uninstall
- silent install oracle response file
- Oracle Silent Install 静默安装
- silent install oracle 12c
- oracle 12c silent install
- MySQL - Windows silent install/uninstall
- "Silent" Install of Oracle 10g Client - 静默安装方式
- AIX 6.1 silent install IBM Installation Manager 1.5.3
- Silent Install Oracle 10.2.0.1.0 under CentOS 6
- Oracle 11.2.0.3.0 RAC Silent Install-3Nodes
- silent install oracle 11.2.0.1 x86_64 for linux
- Android Silent Install Apk(Android 静默安装)
- 也谈Sybase ASE15.x在Windows下的静态安装(silent install)
- nginx-0.8.38源码探秘(四)
- gethostbyname()
- iphone self. 属性的用法
- 关于wicket的checkgroup控件
- 在Java中方法参数的传递,对象是传递引用
- Silent Install
- 网络字节转换inet_aton & inet_ntoa & inet_addr和inet_pton & inet_ntop
- 递归调用make时应使用变量MAKE
- Hibernate之映射值类型集合(映射map)
- 个豆腐干反对
- Struts2中的文件上传
- 个人Java面试题收集
- 跨浏览器的iframe onload 事件监听
- excel 2003 列标题显示不全