Powershell: Set Mouse Pointer Scheme to NONE for XenDesktop VM's

Why to do this? Better user experience; reduced cpu load on zero client devices like xenith compared to aero mouse scheme. Powershell Script References Hey Scripting Guy! SystemParametersInfo

LockWorkstation using Powershell and pInvoke

Notes Keyword PUBLIC is a must, or else wont be able to call the native function. Unlike variables, Add-Type cant be changed once created in a powershell session. References http://msdn.microsoft.com/en-us/library/windows/desktop/aa376875(v=vs.85).aspx http://www.pinvoke.net/default.aspx/user32/LockWorkStation.html

Delete shortcut pointing to a specific URL

There will be cases where some users are asked to test a dev/training webapp. Few of these users tend to create shortcuts/bookmark to the dev/training webapp and still keep using the dev even after the webapp was rolled to production. Desktop guys to rescue to clean out these shortcuts or bookmarks 🙂

Client side XENAPP Session enumeration and selective logoff based on XenApp Server using ICA Client Object (WFICALib)

In my previous post i used AutoIt script to achieve this and now finally figured out to do it using ICA Client Object (WFICALib)

Force logoff XenApp 6/6.5 Session at Disconnect

Two ways to achieve this http://support.citrix.com/article/CTX126775 Computer Configuration/Administrative Templates/Windows Components/Remote Desktop Services/Remote Desktop Session Host/Session Time Limits/Set time limit for disconnected sessions The least one may set is 1 minute. But there are use cases where you may want this to happen right after disconnect. The next method achieves this. http://support.citrix.com/article/CTX127491 Configure

Programmatically remove Public Folders under Windows 7 Libraries

Download Orinal source code from Microsoft CSWin7ShellLibrary.exe Modify Source to the following class Program { static void Main(string[] args) { string[] LibArray = new string[] { “Pictures”, “Videos”, “Documents”, “Music” }; foreach (string libraryName in LibArray) { using (ShellLibrary library = ShellLibrary.Load(libraryName, false)) { string folderPath = “C:\\Users\\Public\\” + libraryName; library.Remove(folderPath); } } } } […]