在将 App-V 服务器从版本4.x
升级到5.x
后,我正在尝试转换一组启动 App-V 应用程序的 Powershell 脚本。以前,我使用以下命令执行此操作:
sfttray.exe /launch $appName
sfttray
命令在运行/launch
命令时引入了可选的/exe
开关:
Used with /LAUNCH to specify that an executable program is to be started in
the virtual environment when a virtual application is started in place of
the target file specified in the OSD.
我已经读到App-V5.x
已经取消了sfttray.exe
,我的替代方案是使用Start-AppvVirtualProcess cmdlet。似乎Start-AppvVirtualProcess
需要两个参数:AppvClientObject
和FilePath
。到目前为止,我看到的每个示例都具有以下格式:
Start-AppvVirtualProcess -FilePath "C:Calc.exe" -AppvClientObject $appVObj
这会在传入的 App-V 对象中启动Calc.exe
,并且似乎是 App-V5.x
等效于:
sfttray.exe /launch $appVObj.Name /exe Calc.exe
但是,如果我不想启动备用程序怎么办?如何获取.appv
包中目标应用程序的文件路径?
有三种方法可以在 App-V 包内启动本地系统进程。第一个是你描述的那个,但你也可以使用/appvve: 命令开关启动任何进程,Windows 将在指定的应用程序包或连接组中打开它。
cmd.exe /appvve:<PACKAGEGUID_VERSIONGUID>
cmd.exe /appvve:aaaaaaaa-bbbb-cccc-dddd-eeeeeeee_11111111-2222-3333-4444-55555555
有关详细信息,请参阅此Microsoft支持文章。