12th grade, 2009

This is a desktop virtualization program. Well, alteast at that time, I didn’t know it was called so. I named it “desktop multiplexing”. I had figured out that something like this was possible after working on process and window manipulation programs (specifically, Project: SILENCER)

The objective:

I learnt that I could hide or show other windows upon will. (In fact, I could even control the controls on foreign windows) I realized that i could extend this to collectively hiding a number of windows and bring out something that could help “multiple users use a single machine without logging out and without letting one user’s set of windows disturb the other’s working setup”. Making this work was fairly easy.

This program also sports a sleek UI, having a neat control panel on the left hand side (see screenshots).


All I had to do was maintain n lists (n = number of desktops) of window handles. Each of the entries in the lists correspond to the windows in each “virtual desktop”. Finding each window is a straightforward process of just cycling through the visible windows and getting the handle of the parent window. Each window has a user defined short cut key. The program registers these short cut keys and switches to the corresponding desktop upon detecting a registered key combination.


“RefractiveSoft” was this company name that I authored by programs with. It was what I wanted to call the company I want to start some day in the future. Just mentioning this in case someone finds this a reason to believe that I “outsourced” the creation of the program.


Main screen


Screen for assigning short cut keys, adding desktops, removing desktops and seeing what windows are in other desktops