Notes:
John Hind has since written a plugin (for Part 2, above) that supersedes Ron's SessionSwitch plugin. John's enhanced version is called XPPlugin.
However, you won't find XPPlugin on this website (at least I couldn't). Fortunately, you can download a copy that includes instructions and an already compiled DLL from the following URL:
http://sourceforge.net/projects/girderplugins/
Here is what I have in my Girder GUI:
Code:
DisableIt (single command), select the Girder Tab,
Disable Device, Device 201
(you specify your own device number
(found in Settings - Plugins))
EventString: select XP Support from the dropdown
then click Learn Event then select
CONSOLE_DISCONNECT
from the dropdown.
EnableIt (multigroup command)
EventString: CONSOLE_CONNECT
Wait: select the Window Tab, Wait, 5000 for Timeout
Enable: select the Girder Tab, Enable Device, Device 201
Save the GML file even if Girder doesn't indicate that the file needs to be saved. Logoff all other users. The Girder program shortcut should be in your "All Users" startup folder, not in only one user's startup folder.
Now it should work. It works very well for me. The only thing that I don't understand is why the initial user session doesn't contend with the new user session over the serial port when the CONSOLE_CONNECT message is broadcast by Windows. Anyway, during my initial testing at least, the new user session is always able to "lock" the serial port for its instance of Girder without any interference from the original user session. This is good news.
Edit:
After seeing the following post in this topic, I realize that I incorrectly thought that all of the plugins on this site were on the Developer page at http://www.girder.nl/developer.php. My mistake. :)