App-V软件排序参考之(三):DSC方法介绍与如何排序辅助应用程序

简介:
 
    App-V 4.5版有一个新功能,DSC(Dynamic Suite Composition),中文翻译为动态套件合成,它提供了一种新方法来集成在各虚拟应用程序之间共享的依赖关系、中间件和插件。一般的应用程序,在Secquencer上只要开始监视,安装应用程序,停止监视,转后我们就可以捕获到应用程序,但是辅助应用程序的排序有一个特别的地方,我发现并不是任何的辅助应用程序,安装完成后,系统都会捕获到东西出来的,有时候是遇到这样的尴尬情况,例如下图所示,不能继续下一步。 
 
      而实际上这是可以理解的,因为它本身很可能就是依赖于其他软件的小插件,而不是一个真正的软件。这就需要在停止监视前,打开主要应用程序,或者自己创造一个应用程序出来,原因下面会介绍。

什么是DSC(Dynamic Suite Composition) 
       首先看看什么是DSC, 以下一段摘自微软Technet杂志与Technet知识库,假如已经了解过,这两段可以忽略。 
       例如,假设您有五个 Web 应用程序,它们需要同一 Java 版本。在 App-V 4.1 中,您必须将此相同的 Java 版本添加到五个单独软件包中的每一个。假设 Java 版本需要一个补丁。管理员稍后必须为五个不同的软件包提供补丁。如使用 DSC,Java 只需打包一次,即可配置为能供所有五个 Web 应用程序使用的软件包。因此,修补 Java 只需要管理员为 Java 软件包提供一次补丁。 
     在对依赖于插件(如 ActiveX 控件)的应用程序或依赖于中间件(如 OLE DB 或 Java Runtime Environment (JRE))的应用程序进行排序时,可以使用动态套件合成功能。如果需要对每个使用这些相关组件的应用程序(包括组件)进行排序,则对这些组件执行更新时要求对所有主要应用程序重新排序。通过对不含这些组件的主要应用程序进行排序,然后对作为辅助程序包的中间件或插件进行排序,只需更新辅助程序包。此方法的一个优点是可以缩小主要程序包的尺寸。另一个优点是使您可以更好地控制对辅助应用程序的访问权限。主要程序包可以具有多个辅助程序包。但是,仅支持一个级别的依存关系,因此您不能将一个辅助程序包定义为依赖于另一个辅助程序包。此外,辅助应用程序只能是中间件或插件,且不能是另一个完整的软件产品。

为什么要打开应用程序,或者自己创建一个应用程序 
     辅助程序包是除主程序包外的第二个包. 根据我的观察,一方面,假如在Sequencer中至少要捕获到一个应用程序,才能完成序列化全过程, 而另一方面,当你需要将这个包导入管理控制台的时候,只有应用程序才有权限控制的功能,从而控制对辅助应用程序的访问者权限.所以必须至少有一个应用程序能够被捕获,那么你可以选择在主应用程序中打开一个应用程序,或者直接创建一个应用程序,比较简便的方法就是打开一个记事本再关闭, 那么至少能捕获到一个程序. 
     下面以Office2007的一个934K的很小的插件(Microsoft Save as PDF or XPS)为例,看看这样的小插件是怎样排序的, 你可以在停止监视前打开一个office任何一个程序查看,接着就至少捕获到一个应用程序了(建议不要打开所有应用程序来查看,不然可能会捕获到很多应用程序,而捕捉更多的应用程序对我们都来是没有大的作用的), 或者我们就直接打开一个记事本再关闭,因为后者具有普遍性,所以下面用打开我们”万能”的记事本来作一个介绍,这里介绍的是在App-V(SoftGrid4.5) 中成功排序辅助应用程序的一个方法,这个不是唯一的方法,也可能你需要会根据你自己实际的环境进行必要的修改。假如有哪里说得不对,请大家指正,谢谢。 
排序实验 

1. 在排序服务器上先真实地安装Office 2007,接着选了Microsoft Save as PDF or XPS 这个插件作为例子进行排序 
 
2. 像往常一样,打开Application Virtualization Sequencer,新建一个包,包名称offadd, 路径选择为Q:\offadd并选择开始监视 
 
3.点选这个小插件安装,一闪很快就安装完了 
 
4. 假如这时候停止监视,后面一步将捕获不到任何应用程序,无法继续下一步,这里的小技巧是,在Sequencer上打开记事本,接着将其关闭,有什么奥妙,看看下一步。 
 
5. 我们可以捕获到了一个记事本应用程序,并成功地完成序列化过程。排序步骤与普通排序一样,这里不在赘述。 
 
6. 我们在App-V server上将这个记事本程序导如,创建的名字为offadd 
 
7. 我们不需要选任何的快截方式,我们无需选择, 因为我们的目的不在得到这个记事本,而是成功排序,醉翁之意不在酒呵呵 
 
8. 导入成功了,可以看到offadd这一个应用程序 
 
9. 我们打开这个插件的.osd文件,找出CODEBASE这一行 
<CODEBASE HREF="RTSP://gztemp:1000/offadd/offadd.sft" GUID="8BB5013F-B364-45B9-A3FF-01E2122BE3A0" PARAMETERS="" FILENAME="%CSIDL_SYSTEM%\notepad.exe" SYSGUARDFILE="offadd\osguard.cp" SIZE="2044844"/> 
 
 
10. 将这一行放到office你需要使用到这个插件的.osd文件中,这里以word为例 
在紧挨 </VIRTUALENV> 标记前的 <VIRTUALENV> 部分结尾处的 </ENVLIST> 标记关闭后,插入 <DEPENDENCIES> 标记。 
将CODEBASE 这一行粘贴到刚创建的 <DEPENDENCIES> 标记后。假如这个包为必需的程序包(意味着在启动主要程序包之前必须先启动该程序包),请在 CODEBASE 标记内添加 MANDATORY=”TRUE” 属性。如果该程序包不是必需的程序包,则可以忽略该属性,这个例子,加不加都没关系,因为不是必须的,这里我加上了。 
保留CODEBASE这一行的3个必选属性 
必选: 
HERF: 
GUID: 
SYSGUARDFILE: 
可选: 
MANDATORY=”TRUE” 
<DEPENDENCIES> 
<CODEBASE HREF="RTSP://gztemp:1000/offadd/offadd.sft" GUID="8BB5013F-B364-45B9-A3FF-01E2122BE3A0" SYSGUARDFILE="offadd\osguard.cp" MANDATORY="TRUE"/> 
</DEPENDENCIES> 
 
11. 完成了,我们看看插件排序前后的效果 
 
 



本文转自 VirtualTom 51CTO博客,原文链接:http://blog.51cto.com/virtualtom/276809,如需转载请自行联系原作者
目录
相关文章
|
1天前
|
供应链 搜索推荐 API
1688APP原数据API接口的开发、应用与收益(一篇文章全明白)
1688作为全球知名的B2B电商平台,通过开放的原数据API接口,为开发者提供了丰富的数据资源,涵盖商品信息、交易数据、店铺信息、物流信息和用户信息等。本文将深入探讨1688 APP原数据API接口的开发、应用及其带来的商业收益,包括提升流量、优化库存管理、增强用户体验等方面。
19 6
|
26天前
|
移动开发 小程序
仿青藤之恋社交交友软件系统源码 即时通讯 聊天 微信小程序 App H5三端通用
仿青藤之恋社交交友软件系统源码 即时通讯 聊天 微信小程序 App H5三端通用
55 3
|
1月前
|
开发框架 监控 .NET
【Azure App Service】部署在App Service上的.NET应用内存消耗不能超过2GB的情况分析
x64 dotnet runtime is not installed on the app service by default. Since we had the app service running in x64, it was proxying the request to a 32 bit dotnet process which was throwing an OutOfMemoryException with requests >100MB. It worked on the IaaS servers because we had the x64 runtime install
家政服务小程序APP开发,做好上门家政最快的方法是什么?
在家政服务领域,打造成功的平台并非易事。本文分享了三个关键步骤:避免初期盲目投入、采用低成本获客方式、建立有效的阿姨筛选机制。遵循这些方法,可助你避开常见陷阱,成为行业头部平台。
|
3月前
|
开发工具
uniapp, 短剧视频类App实现参考,支持滑动播放,仿抖音 仿陌陌 短视频 无限滑动播放 视频流
阿里云点播服务web播放器sdk,短剧视频类App实现参考。仿抖音 仿陌陌 短视频 无限滑动播放 视频流。无uniapp video 原生组件的层级、遮挡、覆盖问题,适合与不同功能视图组合使用,实现丰富的应用功能。
uniapp, 短剧视频类App实现参考,支持滑动播放,仿抖音 仿陌陌 短视频 无限滑动播放 视频流
|
3月前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。
|
2月前
|
机器学习/深度学习 搜索推荐 数据挖掘
北邮移动互联网应用大作业实验报告《云账本app》开发
北邮移动互联网应用大作业实验报告《云账本app》开发
45 0
|
4月前
【Azure Logic App】在逻辑应用中开启或关闭一个工作流是否会对其它工作流产生影响呢?
【Azure Logic App】在逻辑应用中开启或关闭一个工作流是否会对其它工作流产生影响呢?
|
4月前
|
存储 Linux 开发工具
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
【Azure App Service】本地Git部署Python Flask应用上云(Azure App Service For Linux)关键错误
|
4月前
|
存储 SQL JSON
【Azure Logic App】微软云逻辑应用连接到数据库,执行存储过程并转换执行结果为JSON数据
【Azure Logic App】微软云逻辑应用连接到数据库,执行存储过程并转换执行结果为JSON数据
【Azure Logic App】微软云逻辑应用连接到数据库,执行存储过程并转换执行结果为JSON数据

热门文章

最新文章

下一篇
DataWorks