在将App-V服务器从版本4.x
升级到5.x
之后,我正在尝试转换一组启动App-V应用程序的Powershell脚本。以前,我使用以下命令执行此操作:
sfttray.exe /launch $appName
运行sfttray
command命令时,/exe
引入了一个可选的/launch
开关:
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-V 5.x
已经废除了sfttray.exe
,我的另一种选择是使用Start-AppvVirtualProcess cmdlet。似乎Start-AppvVirtualProcess
需要两个参数:AppvClientObject
和FilePath
。我到目前为止看到的每个例子都是以下格式:
Start-AppvVirtualProcess -FilePath "C:\Calc.exe" -AppvClientObject $appVObj
这将在传递的App-V对象中启动Calc.exe
,并且似乎是App-V 5.x
相当于:
sfttray.exe /launch $appVObj.Name /exe Calc.exe
但是,如果我不想启动替代程序呢?如何在.appv
包中获取目标应用程序的文件路径?
在App-V包中启动本地系统进程有三种方法。首先是您描述的那个,但您也可以使用/ appvve:command开启任何进程,Windows将在指定的应用程序包或连接组中打开它。
cmd.exe /appvve:<PACKAGEGUID_VERSIONGUID>
cmd.exe /appvve:aaaaaaaa-bbbb-cccc-dddd-eeeeeeee_11111111-2222-3333-4444-55555555
有关更多信息,请参阅此Microsoft Support Article。