我们团队开发了一些小巧有用的工具来满足客户的某些特殊需求。现在我们把这些工具广而告之,希望对大家能有用。
说明一下,这些工具不是产品的功能,风险自担。
基于Horizon虚拟桌面的盲水印
更改全屏虚拟桌面的分辨率
清除空闲的horizon桌面会话
Writable Volumes操作小工具
提升普通用户的系统权限
ThinPrinter
ViewLauncher
在瘦客户机环境中,horizon客户端需要自动最大化启动并屏蔽桌面和任务栏。
View Client Locker
屏蔽虚拟桌面中的系统选项并禁止用户切换其它应用程序。
将物理机变成瘦客户机
如果用户断开或登出Horizon虚拟桌面,物理机也会自动登出
基于Horizon虚拟桌面的盲水印
简介
该工具可以在Horizon虚拟桌面的屏幕上,叠加一层肉眼无法看到的“水印”图片。更重要的是,这个“水印”图片是动态生成的,可以由Horizon管理员来进行定制。详见之前的blog:
https://blog.51cto.com/vmwareeuc/1975882
更改全屏VDI桌面的分辨率
简介
在一般的瘦客户机环境中,普通用户只能操作远端的虚拟桌面,是没有权限修改Horizon客户端所在的物理机的系统状态的。
Horizon虚拟桌面的分辨率由物理机分辨率所决定,所以普通用户无法修改虚拟桌面的分辨率。但是更改分辨率的需求实在太常见,怎么办?我们提供了这个小工具,用户只要在全屏模式下运行一下命令就OK。
如果你能搭***的话,请观看视频https://youtu.be/lcYuQdbK47k
步骤
1) 下载小工具压缩包SetVDIRes.zip并解压
2) 复制“devicebridge-ResSet.dll”到客户端(实体机)并且运行命令注册,示例如下:
注意:
如果Horizon客户端的版本号是4.3或4.4并且运行在64位主机上,需要注册“Client\For View Client 4.3 & 4.4 (64-bit)”文件夹中的“devicebridge-ResSet.dll”
3)复制“SetVDIRes.exe”到虚拟桌面并且在命令行中运行来设定分辨率。示例如下:
清除horizon桌面会话
简介
用法
1) 下载小工具discidle.exe
2) 确认虚拟桌面环境中存在.net framework2.0或3.5,否则需要安装
3) 管理员配置这个小工具能够自动运行在用户会话中(如注册表或启动菜单)
4) 命令格式:
discidle.exe <logoff|disconnect> <timeout_minutes>
4) 命令格式:
-
示例1:
空闲10分钟后注销虚拟桌面
discidle logoff 10
示例2:
空闲5分钟后登出当前会话
discidle disconnect 5
注意:
1) 当用户会话处于空闲状态,系统会弹出消息框。如果接下来用户在指定时间内做了一些操作,消息框会自动消失
2) 当用户登陆虚拟桌面时,这个小工具或强制杀掉以前的实例进程,请确认新的设置能够覆盖前期的设置。
3) 小工具设定了一个计时器来监控会话是否处于空闲状态。如果会话出于某种原因断开了,这个计时器就会停止。如果会话重新连接,计时器也会重新工作。
Writable Volumes操作命令行工具
简介
-
VMware App Volumes™ 提供实时应用交付和生命周 期管理功能。IT 部门可使用 App Volumes 向用户即时 交付应用和数据,而不会影响用户体验。App Volumes现在是JMP平台的一部分,是Vmware用户终端计算的明星产品。Writable Volumes是一对一配置的虚拟磁盘,每个用户可以有单独的Writable Volumes并可以快速加载到自己的虚拟桌面中。
这个小工具可以以命令行的方式使能/禁用/删除/扩展writable volumes,可被管理员以批处理的方式执行大量操作。
用法
1) 以具有管理员权限的用户登陆一台可以访问App Volumes服务的虚拟机。可以在虚拟机上用浏览器来登录App Volumes页面来确认。
2) 安装并配置JRE环境
3) 下载压缩文件并复制到这台虚拟机上目标文件夹中,示例的目标文件夹为E:\NTT
4) 打开windows命令行并切换工作目录到目标文件夹,示例为E:\NTT
5) 执行命令来操作Writable Volumes,比如获取用户app2下的Writable Volume的信息
Java -jar NTTService.jar -c 10.117.8.2 eucsolutionlab.r730lab administrator VMware123 --getws --user app2
命令格式
-
基本的命令格式为:
java -jar NTTService.jar -c <IP> <domain> <user> <password> <action> [action parameters]
§ IP: AppVolumes管理服务器的地址
§ Domain: 域名
§ User: 具有登录App Volumes服务网页权限的用户
§ Password: 对应的密码
§ Action: 关于writable volumes的操作.
o --lw: 列出所有writable volume的基本信息
o --getw: 以Json格式显示writable volume 的详细信息
o --getws: 显示writable volume的重要信息
o --enaw: 使能writable volume
o --disw: 禁用writable volume
o --delw: 删除writable volume
o --expw: 扩展writable volume 的容量大小
§ Action parameters: 可选参数.
o --user: 拥有指定writable volume的用户
§ 或: 以 “,”分割的用户列表
o --id: 指定volume的ID
§ 或: 以“,”分割的ID列表
--size: 需要扩展writable volume的容量大小
文档
App Volumes API参见:
https://chrisdhalstead.net/2015/12/30/vmware-app-volumes-api-reference/
提升普通用户的系统权限
简介
-
普通用户在企业的虚拟桌面中的权限是受限的,有些操作比如安装某些软件是需要管理员权限的。显而易见,域管理员或本地管理员的密码是需要保护的,不可能透露给普通用户。这个软件会生成管理员的一个授权证书和子程序,普通用户运行子程序就可以把自己添加到本地管理员组里。当然,这个程序也可以通过修改达到以指定用户权限运行程序或命令的功能。可以参见工具RunAsSpc(http://www.robotronic.de/runasspcEn.html)。管理员也可以通过GPO的方式管理用户权限。
用法
1) 管理员下载压缩包并可以解压到任何桌面上。
2) 管理员产生加密的授权证书。
管理员启动genAdmin.exe并输入用户名和密码。这个用户账号需要具有权限来把普通的vdi用户来加到本地管理员组。单击“产生文件”并产生cert.myCrt文件。
-
3) 管理员下载压缩包并可以解压到任何桌面上。
管理员发布Add2LocalAdmin.exe, cert.myCrt和PsExec.exe给虚拟桌面终端用户。需要注意的是三个文件要处于同一个文件夹内。
4) 登陆虚拟桌面后,终端用户可以打开Add2LocalAdmin.exe并单击“将当前用户加入到本地管理员组”。操作完成后后自动注销当前用户会话。
5) 终端用户再次登陆就会具有本机管理员的权限了。
VMware Horizon Client全屏幕显示
简介
ViewClientMaxLauncher可以令VMware Horizon Client开启的远程桌面自动进入全屏模式,完全隐藏原桌面及任务栏。以此来实现 "View Client Only" 模式。
用法
1) 下载小工具并解压至任意位置
2) 将小工具后缀名.exe_修改为.exe
3) 运行任意一个可执行的版本
注意
该工具生效后用户将只能使用注销关机远程桌面等方式来退出该桌面
后记
这次介绍了四个小工具,用户可以从百度云盘的链接(https://pan.baidu.com/s/1bqf7qZd)上下载。
Update 增加ViewClientMaxLauncher
转载于:https://blog.51cto.com/vmwareeuc/2082783