Switching desktops between different users possible?

Hey guys,

 I love running scripts and cmdlines under different accounts – maybe I am too paranoid, but most of the time I have three accounts (one domain admin, one local admin and one normal user)…

I was always happy to use just cmd\powershell to manage everything, specially in combination with pluginned Total Commander… However sometimes you need to switch to desktop (for icons, start menu entries, whatever)…

 As far as I remember this was not possible – if you killed explorer.exe and started it under different account, it was not working.

But to my surprise today I accidentaly launched explorer under different account and his desktop and start menu appeared!

Was it working always (and I am just too stupid that I didnt try it before) or did Microsoft change something?

I just implemented small function SwitchDesktop (get-process explorer | kill; explorer) and it really looks like it is working…

Now I can just switch between my cmd windows and switch which desktop I want to use 🙂

Of course this can cause many problems, but I still like it a lot 🙂

PowerShell syntax files for Crimson Editor


 I love to use Crimson Editor – its reliable, simple, fast and got (almost ;)) everything I want. What I was missing was syntax files for PowerShell – I even started to creating them, however didnt have enough time, so I completely forget it 🙁

 Today I accidentaly found that they are available at this page:


 Hope so you will enjoy them same way as I do 🙂


HookApplication – some real-life examples

I still dont think its time for public release, however I just wanted to share with you some different situations where I liked to use HookApplication…

 For most of this actions I needed to write some plugins – I decided to keep HookApplication as simple as possible to have it as error-prone as possible.

First I tried to replace processes – I replaced Task Manager with Process Explorer and after some time also Notepad with Crimson Editor…

 Right now I am thinking about installing Maxthon 2.0 and if I found it useful, I will replace Internet Explorer with it.

This was quite interesting, however nothing really special. For example Process Explorer supports replacement of Task Manager in its options…

Then I found out I can use HookApplication to solve one of my problems I got right now – locking processes with passwords.

Why do I need this? I am citrix administrator and if I am debugging something, I would like to be able to run task manager – however I want to prevent users to do the same. Problem is that I often need to run task manager under THEIR account, not mine. So I wrote small stupid plugin, that will pop-up password message box when you try to run specific process and if you dont know password.

I got it working with task manager – and it works great 🙂

So, I was thinking what were other ways how users were “hacking” citrix boxes usually – one of them is somehow (taskmgr, word etc – there are many ways) running cmd and then you can do almost what you want.

Created new plugin – if process is launched without any parameters (or vice versa), pop-up input box with password 🙂 That means that scripts will run (cmd + parameters), however without password you are not able to use it…

Another usage was related to allowing only one instance running – I have few applications that doesnt always exit correctly (GUI not visible, however application still running) and some of them are extremely stupid when handling such situation (Miranda wont show GUI for example…). New plugin –  check instances – if more than x running, do something (for some processes just popup message box, for some kill current process, for some kill rest of processes….). Quite simple, however it helped me a lot, since this I havent experienced any problems 🙂

Then I have some network related applications – for example I am killing all processes that are “calling home” before running VPN and then I am running them again or I am checking if NIC is enabled when trying to connect through EDGE (sometimes it fails on Unknown error if card is disabled)…

Another useful scenario for me was using Hook Application together with AutoIt scripts – sometimes you just want to automate something, however its not as simple as it looks like – you can end up with never-ending script (which is quite stupid) that will wait under condition appears (window title appears for example) or you can run your program using script (which is nothing for me as sometimes run programs using Start Menu, Launchy or shortcuts ;)). So with hook application I just assigned few AutoIT scripts with related processes and viola – its working exactly as I was expected 🙂

 Also I got some processes that I sometimes accidentaly close, but I want to keep them running all the time – for example GUI for my scripts. So I created entry that will run the command again when it is closed and it is working 🙂

Citrix RoundTable – PS4.5, ICA 10.0, Tarpon…

I spent few days at UK listening to upcoming Citrix product – and I wanted to share my feelings…

 Citrix is DOOMED 🙂

 No, really, the whole presentation was quite stupid. There are not many new things coming.

Presentation Server 4.5

It provides “Project Tarpon”, which is streaming of applications. This is nothing new – Softgrid (and now Microsoft) had Softricity for quite a long time. I can say that (compared to Softricity) Tarpon is nothing special. However at least it is available finally 🙂 Big question now is how will Microsoft license Softricity – right now license is extremely cheap (10$ including bunch of other utilities), so I was not really excited by Tarpon.

Another “big” change is transfer of functionality from CMC (which is very stupid) to MMC (which isnt much better ;)). Problem is that version X.5 means that not everything was moved from CMC to MMC – and you must switch between these two consoles to perform some tasks. And this is really stupid 🙁

ICA Client 10.0

Nothing really new – per-user installation (without admin rights) was quite interesting, however nothing extremely cool. Support for MUI (multiple languages) is standard today and on normal presentation it will be just one line at the end of new features list – however on this presentation citrix guys spent 20 minutes (!!!) describing that you can change language, they had 8 slides (!!!) including installation screenshots… Really stupid 🙁

 To be honest I was really disappointed – this presentation could took 1 hour instead of 1 day.