goScreen

Virtual Desktop Manager for Microsoft® Windows
95/98/ME/NT/2000/XP
version 3.4

WEB home page: http://home.eol.ca/~andgur/software/goscreen.html
Copyright © 1998-2002 Andrei Gourianov, andrew-guryanov@usa.net
Translation to

Bulgarian - Yavor Christov
Croatian - Donald Rumac
Czech - Jan Novák
Dutch - Martin van Es
Estonian - Birgy Lorenz, Web page...
French - Alan Manach
German - Wolfgang Brodowski
Hungarian - Sándor Soós
Italian - Luca Croci Candiani, Web page...
Korean - Joohwan John Kim
Polish - Jerzy Szymański
Romanian - Vlad Danciu
Russian - Andrei Gourianov, Web page...
Slovenian - Boris Grzina
Spanish - José Rubén Pérez González
Swedish - Anders Blom, Web page...

Contents.

What is it.
All features at a glance.
How does it work.
Why goScreen?
How to...

Registration.

What is it.

    goScreen helps you better organize your computer monitor screen area by creating up to 40 virtual pages on it. It adds another dimension to the Windows taskbar. Now you can group applications by themes and avoid an overcrowded desktop. When you switch screen pages, all running Windows programs just disappear from the screen and from the taskbar, but they are right there waiting when you switch back.
    Think of your desktop as a sheet of paper. It has one visible surface. Now imagine that there is a number of surfaces, or screen pages, with only one visible at a time. All the pages are of the same size − size of the monitor screen and are placed "one above the other". This is how goScreen works.
    It creates a number of virtual pages on the monitor screen. When a program is started, it is placed on the current - "active" screen page. When one then goes to another page, the program is left on the page where it was started - one can always find it there. It is possible to move programs from one screen page to another.
    When you start goScreen for the first time, you see several numbered buttons plus <?> and <x> buttons. Each numbered button represents a virtual page. Raised button is for inactive page, sunken − for the current one. Button "with ribs" means that this page is empty, that is there are no running applications on the page. One can change number of pages from 2 to 40. But this is only the beginning. The visual appearance is highly configurable. It is possible to change size, font, color, put icons on buttons and so on. Also, there is a number of screen management commands, that you may want to define.

All features at a glance.

Visual appearance:

Screen pages:

Operation:

Information:

    In some cases there is more than one way to do the same thing. Expect the best. GoScreen requires some tuning, but the reward is huge: your completely personalized desktop management utility, which lets you use your computer resources at fullest and saves your time.

How does it work.

    There is no magic. There are two Windows API functions that make goScreen possible: ShowWindow and GetWindowText. So, as long as Microsoft supports this sort of interprocess communication, goScreen will work. When you go from one screen page to another, goScreen just hides all visible windows on the previous page and shows ones on the next. Hiding and showing a window is a legal operation and all applications should react properly, for example redraw itself properly. It is one of the major requirements in developing for Microsoft® Windows. Of course, there is no guaranty of how fast they will respond. Here I depend on them - if they are slow, please do not blame me. Also this explains sometimes bizarre behavior of other applications - they might call ShowWindow themselves, or not call it when it would be nice to do so.
    GoScreen does not monitor Windows shell activity - this would require installing Windows hooks, which I believe is unsafe. For example, when one double clicks a file in Windows Explorer, shell finds in the registry what application can open this file, starts this application and commands it to open the file. GoScreen is not involved in this scenario.
    GoScreen has no initiative. It can do many things, but only when you command it to do so. That is, as long as you do not touch goScreen, it does not touch your system.

Why goScreen?

How to...

"Left click" stands for "single click with the left mouse button"
"Right click" stands for "single click with the right mouse button"

Installation.

To install it:

    No installation is necessary. There is a single EXE file − goScreen.exe. Just run it. That is, having unpacked distribution package, you can immediately try goScreen. Still, for convenience, there is also a Setup program.
    Distribution package contains: goScreen.exe − main executable, gsSetup.exe − setup program, several DLL files, each of which contains language-dependent resources (goScreen is multi-lingual) and goScreen.htm, which you are reading now.
    The purpose of gsSetup.exe is to copy the package files to a specified location, to configure goScreen to be started at Windows start-up and to install desktop shortcut to it. So, run it, specify desired options and press Install.

To uninstall it:

    The purpose of de-installation is to remove goScreen files from computer and to clean up registry. Unlike many other programs, goScreen, when uninstalled, leaves no traces in the registry. It means that all configuration information will be erased. That is, if you plan to re-install it later - you will have to configure it again. In this case, maybe it is worth to consider saving configuration information into a file.
    Close goScreen if it is running. Go to Start - Settings - Control Panel menus and invoke Add/Remove Programs. Then select Andrew Guryanov's goScreen item and press Add/Remove button. When setup program starts - press Uninstall.
    IMPORTANT NOTE: In case you stop using registered copy of goScreen (at all, or on a given computer), you have to uninstall it. It is not a problem, if you have never installed it before. Just find gsSetup.exe, run it and press Uninstall.

To change setup options:

    One might want to install goScreen into another directory, change its behavior at Windows start-up (run it automatically or not), or install or remove a desktop shortcut to it.
    Close goScreen if it is running. Go to Start - Settings - Control Panel menus and invoke Add/Remove Programs. Then select Andrew Guryanov's goScreen item and press Add/Remove button. When setup program starts - specify desired options and press Install.
    Please note, in case you are re-installing it into another directory, you have to remove files in the previous directory manually.

To transfer configuration settings to another PC:

    For example, you have got new PC and would like to transfer goScreen there without re-configuring it again. Or, you would like to share you configuration settings with the rest of the world (say for instance, you are system administrator and have to install it on several computers in your organization). Whatever the reason is, here is how.
    Close goScreen if it is running (it saves all the settings). Run regedit. Find and select the key named HKEY_CURRENT_USER\Software\Andrew Guryanov\goScreen. Select Registry - Export Registry File menus. Specify the file name to which settings will be saved. This is actually a text file, so one can look on its contents using notepad. Then copy this file to another computer, make sure goScreen is not running, right click the file with settings in Explorer and select Merge menu item.
    Please note, all references to other files (paths - it can be Windows icons, pictures, other programs) are absolute. That is, on another computer goScreen should be able to find these files on same locations. Still, nothing happens if it is unable, it just ignores it.

To use configuration file instead of registry:

    By default, goScreen saves all configuration settings in the Windows registry, but there is a way to make it use configuration file instead. I would ask you to think twice before using this option and do not use it unless you really need it. The solution is to specify name of the file in the goScreen command line. That is it. If command line is not empty, goScreen interprets it as a configuration file name. Put the file name in quotes if it contains blanks. Also, I would recommend to specify full path names only.

To change the language of the user interface:

    Invoke the Properties dialog box, go to the Control bar tab and select a language in the Language combo box. The language will be changed only after you close the Properties dialog window.
    If you do not find your favorite language in the list - visit goScreen's WEB page - there is a chance it has been added recently. This feature is only available due to invaluable contributions of volunteers, who took time to translate it. Please join me in praising them.

    All language-dependent resources are stored in special DLLs, each of which has a unique name like gsResXX.dll. Only one such DLL is used at any given time, so one can remove unused or add new ones. There is only one exception: never remove nor rename gsRes.dll - the one, which provides resources for the English version.

To change font used in the Properties box:

    This is actually a Windows-wide parameter. Invoke the Properties dialog box, just to see the effect. Right click the monitor screen and select Properties menu item. Go to Appearance tab and select Message Box in Item combo box. Change font, press Apply, enjoy the effect.

To close goScreen:

    Left click the <x> button. Or activate goScreen (click on it) and press Alt+F4 on the keyboard.

Size and position.

To move goScreen panel:

    Move the mouse cursor to the non-button area. Press the left mouse button and, while holding it down, move the mouse. Release the left mouse button to drop goScreen. If you move it to a screen edge and do not want to dock it there - hold the keyboard Ctrl key down while moving.

To resize goScreen panel:

    Move the mouse cursor to the top or bottom of non-button area of goScreen until it changes to a resize cursor. Press the left mouse button and, while holding it down, move the mouse. Release the left mouse button to release goScreen.

To make goScreen panel "most topmost":

    Invoke the Properties dialog box, go to the Control bar tab and check or uncheck Most topmost check box. When set, this property means that goScreen panel cannot be covered by other topmost windows.

To dock goScreen panel to a screen edge:

    Move goScreen to a screen edge until it goes a bit out of the screen and drop it there. goScreen disappears immediately (if you do not want to dock it there - hold the keyboard Ctrl key down while moving). If your system is capable of showing a window contents while dragging it - goScreen also draws a rectangle near a screen edge when it is ready to be docked. To show goScreen up - just move the mouse cursor to the same screen edge. Or use a keyboard shortcut command.
    Docking makes goScreen panel invisible while you are working with other applications. Please be careful when using this option: goScreen becomes completely invisible and it is very easy to forget about it.

To put goScreen icon on the system tray:

    Double click the non-button area with the left mouse button. Or invoke the Properties dialog box, go to the Control bar tab and check or uncheck Put on system tray check box. Also, to detach goScreen panel from the system tray - left click its tray icon and move its panel somewhere.
    This works pretty much the same as docking. That is, its purpose is to hide goScreen panel while you are working with other applications. But comparing with docking it has a couple of benefits - one can see a list of all running applications and find an application and go to the corresponding screen page without showing goScreen panel.

    In version 2.5 and earlier this mechanism worked differently: instead of putting icon on the system tray it attached goScreen panel to the task bar. I was not completely satisfied with that solution and replaced it in version 2.6. Which in turn caused a number of complains from users. Well, now there is a possibility to use either of this mechanisms. Changing it is a bit tricky though:
   Close goScreen, if it is running. Go to Start - Run Windows menu and type regedit in the dialog box shown, press OK. Find entry HKEY_CURRENT_USER\Software\Andrew Guryanov\goScreen\Main and double click the Attach value. Change the value data from 0 to 1. Now, when you start goScreen next time, the old "attachment" mechanism will be active. If you do not like it - change this value back to 0.

Visual appearance.

To invoke goScreen Properties dialog box:

    Left click the <?> button. Or right click the non-button area and select Properties menu item. Or press F1 on the keyboard.

To invoke Page Properties dialog box:

    Right click a page button and select Properties menu item.

To show/hide goScreen panel window controls:

    Invoke the Properties dialog box, go to the Control bar tab and check or uncheck Show window controls check box. When the controls are invisible, use F1 to display Properties dialog box, Alt+F4 to close goScreen.

To change goScreen tooltip font:

    Invoke the Properties dialog box, go to the Control bar tab and press Font button.

To change goScreen panel color:

    Invoke the Properties dialog box, go to the Control bar tab and select a color in the Color combo box.

To change the page button name:

    Invoke the Page properties dialog box, go to the Name tab and enter the name in the Name edit control.

To change the page button icon:

    Just drag and drop an icon, or a program file, or a shortcut to it on the page button. Or, Invoke the Page properties dialog box, go to the Name tab and enter the Windows icon or application file name in the Icon edit control. [New in version 3.4] (It is possible to drag and drop an icon file on the Icon edit control). You can also change the size of page icons.
    If a program file contains more than one icon, goScreen always selects the first one. [New in version 3.4] Still, it is possible to select a different icon: create a desktop shortcut to the program, change the icon of the shortcut by editing its properties, drag and drop the shortcut on the page button, delete the desktop shortcut.

To change page icon size:

    This changes the size of the picture - how an icon is displayed on a page button. Invoke the Properties dialog box, go to the Page buttons tab and enter the number in the Icon size edit control (the icon is displayed in a square shape).

To change page button font:

    Invoke the Properties dialog box, go to the Page buttons tab and press Font button.

To change page button colors:

    Invoke the Properties dialog box, go to the Page buttons tab and check or uncheck Current page color, Empty page color and/or [New in version 3.4] Non-empty page color check boxes. Then press the nearby button(s) to edit the colors. This option is useful when using only page icons - "ribs" and raised/sunken state may be difficult to distinguish in this case.

Screen pages.

To change the number of pages:

    Invoke the Properties dialog box, go to the Page buttons tab and enter the number in the Number of pages edit control. One has to restart goScreen for this change to come into effect.

To activate a screen page:

    Left click corresponding goScreen panel button. It is also possible to setup a specific keyboard hot key for each page, or move from page to page by page switching. Another option is to use Window map.

    [New in version 3.4] For those of you who have a keyboard with programmable keys: sometimes such keys can only be programmed "to start applications". It is possible to switch screen pages using such keys: use command line in the form
    "C:\Program Files\goScreen\goScreen.exe" -page=N
Naturally, goScreen must be up and running before you invoke such a command.

To setup a keyboard hot key to activate the page:

    Invoke the Page properties dialog box, go to the Keyboard activation tab and specify key combination you like. Setting up your own hot keys is necessary to avoid possible conflicts with other applications. And... it is nice to be able to use your own preferences instead of being forced to use someone's else, isn't it?

To change the screen page background picture:

    Just drag and drop a picture file on the page button. Or, Invoke the Page properties dialog box, go to the Background tab and enter the picture file name in the Background picture edit control. [New in version 3.4] goScreen now supports using pictures in GIF and JPG file formats. Also, it is possible to drag and drop a picture file on the Background picture edit control.

To change the screen page desktop color:

    Invoke the Page properties dialog box, go to the Background tab and check or uncheck Desktop color check box. Then press the nearby button to edit the color.

To hide the page:

    Invoke the Page properties dialog box, go to the Name tab and check or uncheck Hide page button check box. When hidden, the page is accessible only by the keyboard hot key (so it must be set as well) and is excluded from the page switching mechanism. Use this option with caution and never forget the access key.
    There is another, closely related option - Guard. It answers the question "What should goScreen do when someone tries to close it, but there are some running applications on hidden pages?" - just exit or never exit?

Operation.

To display Window list window:

    Right click the non-button area and select Window list menu item, or use a shortcut command. By clicking on an application here one activates it. It is also possible to drag and drop an application from one screen page to another. In case there are empty pages, Window list creates a special drop zone. Here one can select a drop page by moving a cursor from left to right.

To display Window map window:

    Right click the non-button area and select Window map - Open menu item, or use a shortcut command. Unlike textual Window list, Window map is a graphical representation of existing screen pages and what applications are running on what page. Each application is shown here by its icon. By clicking on an application icon one activates it. It is also possible to drag and drop an application from one screen page to another.
    Window map can be docked to any side of the monitor screen or left in a floating state. As usual, when you move Window map to a screen side and do not want to dock it there - press and hold keyboard Ctrl key down. There are options to make it Always on top and Auto hide.
    [New in version 3.4] An interesting possibility is to "auto-hide" Window map while in a floating state: move it to a screen edge while holding keyboard Ctrl key down and drop it there. Try it, maybe you will like it more than the "plain" docking.
    Window map also has a keyboard interface: use Tab or Shift+Tab to select a screen page, Arrow keys to select an application on the page, Enter or Spacebar to activate the selected item (page or application).

To use Run window:

    [New in version 3.4] Right click the non-button area and select Run menu item, or use a shortcut command.
    Run tool makes it possible to start other applications or open documents. Unlike standard Windows Run dialog box, this one can start several applications at once. Also, each screen page has its own list of applications (documents), which gives better opportunities for customization - goScreen remembers what applications you usually run on a particular screen page.

To use X-Mouse function:

    [New in version 3.4] Invoke the Properties dialog box, go to the Miscellanea tab and check X-Mouse checkbox.
    X-Mouse function makes it possible to activate an application on the current screen page by pointing on it, not only by clicking.
    Please note, implementation of this feature has absolutely nothing to do with the similar option provided by Microsoft. In fact, they work differently - you decide, which one is better.

To move an application from one page to another:

    Right click an inactive page button. A menu will be shown with the list of applications on that page and on the current page. By selecting an item you move the application to (upward, to the top) or from (downward) the current, active page. Another option is to drag and drop application's title in Window list or icon in Window map.

To perform an action (maximize, minimize, restore, close) for all windows on the current page:

    Right click the current page button and select an action.

To find an application and go to the corresponding page:

    Right click the non-button area. A menu will be shown with the list of all applications on all screen pages. By selecting an item one activates corresponding page, if necessary, and the application. Another option is to use Window list or Window map.

To "send back" windows from other pages:

    Left click the current page button. Or, click keyboard hot key which corresponds to the current page.

    Sometimes (very rarely, as I believe) you may want this action to be executed automativally on goScreen startup. To configure goScreen to do it for you, close goScreen, if it is running. Go to Start - Run Windows menu and type regedit in the dialog box shown, press OK. Find entry HKEY_CURRENT_USER\Software\Andrew Guryanov\goScreen\Main and double click the WaitBeforeClean value. Its default is 0xffffffff, which means that this function is disabled. Change the value data to 0 or any positive integer. When the value data is greater than zero, that means the number of seconds on Windows startup to wait before executing this command. When the value data is zero, goScreen waits 20 seconds, which I believe would suffice in most cases. Again, this value means how many seconds to wait on Windows startup, when your computer is very busy starting many different applications. I am unable to detect programmatically when it is finished, that is why I ask you to configure it yourself. Otherwise, when you just restart goScreen, the waiting period is 2 seconds always.

To show a window on all screen pages:

    Right click the current page button, go to the Stick menu item and select a window. A sticky window is shown on all screen pages.
    Another option is to specify rules as for how to find window(s) which should be sticky. goScreen can distinguish windows by who has created it and by window title or title pattern. It is good idea to have an application for which you are going to define a rule running. In this case you can just select appropriate information from the list and maybe modify it slightly:
    Invoke the Properties dialog box, go to the Stick tab and define a rule. Exact title means that window should have this exact title, All - all the specified words should be present in the title, Any - any one of the specified words should be in the title. If you specify empty string as a title and say it is Exact - this means a window with no title (which is a very rare case). At the same time, if you say All or Any - this means a window with any title.
    Another option to differentiate windows is by an application which has created it. When you select a title from the list of available (running on the current screen page), this application is shown in the Process combo box. If you clean this entry - that means a window with the specified title (pattern) which has been created by any application.
    So, defining a rule, think what is more appropriate for you in each case. For example, you have a text document (MyText.txt) opened in Notepad. On the goScreen "rule" panel you will be able to find the window title (MyText.txt - Notepad) and the application which has created it (Notepad.exe). Now, what do you want? If you want all the documents opened by Notepad be sticky - specify Notepad in the Title edit control, select All, and select Notepad.exe in the Process (and click Add button, which adds this rule to the list of defined). Otherwise, if you want MyText.txt document, which, potentially, can be opened by many different text editors, be sticky - specify MyText.txt in the Title, select All and clean any text in the Process edit control.

    On Windows NT, for goScreen to be able to see the names of running processes you need PSAPI.DLL. This is a standard Microsoft DLL, but not all NT computers have it installed. This DLL is not included in the goScreen package.

To assign a window to a specific screen page:

    Another rule-oriented feature (see previous paragraph please) is assignment of a window to a specific screen page.
    One possible scenario is as follows: imagine that you have multiple applications starting at Windows start-up and would like to have them running on different screen pages. How to tell goScreen to relocate them to a "proper" page? The answer is - define assignment rules. Another scenario may be like this: a mail program which runs on an inactive screen page notifies you that there was a new message - "Would you like to read it now?". You open the message, read it and go to another page without closing it. Now, where have you left that message? It takes time to recall. Possible solution would be to define a rule for goScreen to relocate all messages to the page where the mail program is running.
    Invoke the Page properties dialog box, go to the Applications tab and define a rule. What is important to note here is that applications are not relocated automatically, that is not unless you ask for it. From the other hand, such a request is simple: each time you switch screen pages or invoke clean command, all the windows on the current, or previous page are being examined and sent to appropriate page(s), if necessary.
    Say for instance you want all windows created by Notepad.exe to be assigned to page 3 and have defined the rule for it. When on page 2, for example, you can open a text document in Notepad, edit it and still be on page 2. But when you switch to page 1, goScreen will relocate your Notepad window to page 3. So, next time you go to page 2 you will not find your document there. Do not tell me it is inconvenient (if you think it is - do not define any rules for it). Now, instead of remembering where you have left that window, you are supposed to remember where that window should be next time you want it.

To assign a window to several screen pages:

    What if you specify rules, described in previous paragraph, for several screen pages? - goScreen will show such windows whenever you go to any one of pages for which you did it.
    For example, you have specified the rule "keep all windows created by notepad.exe on this page" both for pages 1 and 3. Being on page 1, you start notepad. Then you go to page 2. Notepad is left on page 1. Then you go to page 3. goScreen relocates notepad from page 1 to page 3.
    It is evident, that if you specify such rule for all screen pages, the result will be the same as if you have made such window sticky.

To create keyboard or mouse shortcuts to goScreen commands:

    Invoke the Properties dialog box, go to the Keyboard or Mouse tab and specify key combinations you like. [New in version 3.4] (It is now possible to use screen corners as mouse hot zones, not only screen sides). Setting up your own keyboard hot keys and mouse hot zones is necessary to avoid possible conflicts with other applications.
    There are four page switching commands: Previous/Next, Back/Forward. They let you to go to the previous or next screen page in numerical order or in order of usage.
    Other commands include:

Current - "send back" notification windows from other pages,
Reveal all - relocate all windows from all screen pages to the current one,
Restore all - restore all windows on the current page,
Mimimize all - minimize all windows on the current page,
Maximize all - maximize all windows on the current page,
Close all - close all windows on the current page,
Clean all - Reveal all + Close all. That is, relocate all application windows from all screen pages to the current one and then close them,
Applications - invoke a menu with all applications on all pages,
Page menu - invoke current screen page menu,
Window list - show Window list,
Window map - show Window map,
Display - display current screen page information.
Run - show Run window.
System tray - put goScreen icon on the system tray,
Show - show goScreen panel when it is hidden,
Properties - invoke goScreen properties dialog box,
Page properties - invoke Page Properties dialog box,

To assign a desktop icon to a specific screen page

    There is no way to assign a desktop icon to a specific screen page in goScreen. Still, one might want to consider this option: Create a desktop folder (Right click on the desktop, select New - Folder menu item, rename and open it), move some desktop shortcuts into it. Now, when this desktop folder is closed it will be shown on all screen pages, but when it is open one can assign it to a specific screen page. This possibly can help you to keep desktop icons in a more organized way.

Information.

To display current screen page information:

    This is similar to displaying the channel number on TV screen. Invoke the Properties dialog box, go to the Display tab and specify what to display, where and how: font, color and position.

To see the list of applications running on a screen page:

    Stop the mouse cursor over the page button.

To see the list of all running applications:

    Stop the mouse cursor over the non-button area.

To see the hot key for a screen page:

    Stop the mouse cursor over the page button while holding Ctrl key down.

To see hot keys for all screen pages:

    Stop the mouse cursor over the non-button area while holding Ctrl key down.

Disclaimer.

    This program is distributed in the hope that it will be useful, but without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. In no event the author of this program is liable to you for damages, including any general, special, incidental, or consequential damages arising out of the use or inability to use the program. The entire risk as to the quality and performance of the program is with you.

Registration.

    This is a shareware program. You may try it for a period of one month. After that all the navigation features "expire". To restore them you should register your copy. As a result of the registration, you will be given a special numeric key that "unlocks" the program. Also, all future versions will be free for you.
    There are two types of registration IDs that you may acquire: personal and corporate. Personal ID may be used by one person only, on a single computer at a time. Corporate ID may be used on all corporate computers. Your name (name of your corporation) is an important part of your ID and cannot be changed later.
    For obtaining a corporate license you have to contact me first.

    For on-line registration click here:

https://www.regnow.com/softsell/nph-softsell.cgi?item=1596-1

    In case you prefer paying by cash or cheque, please write me asking how to do this.


Should you have any questions, comments or problems
please do not hesitate to write me to
andrew-guryanov@usa.net

Andrei Gourianov
May 04, 2002.