我們團隊開發了一些小巧有用的工具來滿足客戶的某些特殊需求。現在我們把這些工具廣而告之,希望對大家能有用。
說明一下,這些工具不是産品的功能,風險自擔。
基于Horizon虛拟桌面的盲水印
更改全屏虛拟桌面的分辨率
清除空閑的horizon桌面會話
Writable Volumes操作小工具
提升普通使用者的系統權限
ThinPrinter
ViewLauncher
在瘦客戶機環境中,horizon用戶端需要自動最大化啟動并屏蔽桌面和工作列。
View Client Locker
屏蔽虛拟桌面中的系統選項并禁止使用者切換其它應用程式。
将實體機變成瘦客戶機
如果使用者斷開或登出Horizon虛拟桌面,實體機也會自動登出
簡介
該工具可以在Horizon虛拟桌面的螢幕上,疊加一層肉眼無法看到的“水印”圖檔。更重要的是,這個“水印”圖檔是動态生成的,可以由Horizon管理者來進行定制。詳見之前的blog:
http://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>
示例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