Welcome to TaskSwitchXP Help

Overview

TaskSwitchXP provides the same functionality as the existing application switching mechanism in Windows XP/2003 today. When the hotkey combination Alt + Tab (or Alt + Shift + Tab) is pressed, TaskSwitchXP generates the list of open windows in which the end user is working. This list of open windows is presented as a group of icons, with one outlined by a selection rectangle. As the end user continues to hold the Alt key and presses the Tab key, the selection rectangle moves to the next (previous) icon. The selected icon represents the application that Windows will bring to the foreground once the Alt key is released. In addition to displaying an icon list, however, TaskSwitchXP show also a thumbnail preview of the window that will be switched to.

Main features

  • Small and FAST!
    Pure Win32 API programming guaranteed for fast running with high graphic quality. TaskSwitchXP is compiled without CRT (C Run-Time Library), all floating-point operations are written on assembler language (TaskSwitchXP.exe is even smaller: 39 KB - 22 KB icon). TaskSwitchXP uses less than 1 Mb memory.
  • Modern XP design.
    TaskSwitchXP can render using Windows XP Visual Styles the end user currently has selected. TaskSwitchXP window also allows standard Windows XP shadow and transparency effects.
  • Window snapshots as thumbnail preview.
    TaskSwitchXP displays small screenshot of the selected application window in addition to the associated icon.
  • Highly configurable.
    TaskSwitchXP window can be customized on a per-user basis with optional font settings, transparency and more.
  • Owned and popup windows are processed correctly.
    Unlike Microsoft PowerToy TaskSwitcher, TaskSwitchXP doesn't duplicate window snapshots of PowerPoint, VS .Net, PSPad, The Bat!, etc.
  • Mouse control.
    Besides classical Alt + Tab switching TaskSwitchXP supports mouse control. You can use mouse wheel and buttons to select the icon of the application you want to switch to.
  • Keyboard navigation.
    Use the arrow keys, Home, End to navigate the icon list.
  • Full source code available!!!
    TaskSwitchXP is distributed very free with open source license. You can download the full source code to TaskSwitchXP here.

System requirements

TaskSwitchXP works only on Windows XP/2003 based operating systems.

© 2004 by Alexander Avdonin


TaskSwitchXP Configuration

Configuration parameters

  • Autostart on system startup
    Automatically start TaskSwitchXP when current user logged on.
  • Set high priority for TaskSwitchXP
    Use this option to hasten TaskSwitchXP.
  • Disable Windows XP Visual Styles for TaskSwitchXP
    By default TaskSwitchXP uses current Windows XP theme. When this option is enabled TaskSwitchXP always uses Windows Classic Style to render its window.
  • Left-right pane order
    Use this option if you want to look at TaskSwitchXP from another side :)
  • Don't create exclusion region for window preview
    This option have effect only for non-rectangular windows (all windows with visual styles, media player, etc). Normally TaskSwitchXP obtains a copy of the window region (the window region determines the area within the window where the system permits drawing) and then creates a new transformed preview region. When this option is enabled TaskSwitchXP draws the window preview with black background. Use this option for slow systems only.
  • Show selected application info
    When this option is enabled TaskSwitchXP displays selected application file name and process identifier (PID).
  • Enable tooltips for icon list
    When the user pauses the mouse pointer over a icon, tooltip with window caption appears.
  • Enable mouse over selection for icon list
    Select icon when the cursor moves over.
  • Select icon on left/right mouse button down
    Use this option to select an application from icon list by mouse button down.
    • Switch to window on left mouse button up
      It is an addition to previous option. When this option is enabled you can switch to application by left mouse click on its icon. Right mouse button is being used for selecting.
  • Inverse mouse wheel
    By default mouse wheel up moves cursor to the next icon in list, wheel down - to the previous icon. Option inverses this order.
  • Drop shadow on TaskSwitchXP window
    Enables the drop shadow effect on TaskSwitchXP window. Disable this option for slow systems.
  • Enable transparency for TaskSwitchXP window
    Set TaskSwitchXP window transparency percentage from 0% to 90%.
  • Position on screen
    Set horizontal and vertical alignment of TaskSwitchXP window on the screen.
  • Caption text parameters
    Specifies name, size, shadow deep and colors of the font used TaskSwitchXP to draw window titles.

Command lines

  • ConfigTsXP.exe -i
    Check settings for earlier TaskSwitchXP versions compatibility.
  • ConfigTsXP.exe -d
    Restore default settings.


TaskSwitchXP FAQ

Frequently Asked Questions

Q: Just wondering why WinXP is required? I'm looking for such an utility for Win2K.
A: Windows 9x/NT/2000 doesn't support the window preview feature (for more information see PrintWindow API in PlatformSDK documentation).
Q: Program doesn't react to ALT-TAB combination at all.
A: Maybe another taskswitch application is running. Maybe one of these programs is installed on your computer: Microsoft PowerToy TaskSwitcher, WinGlance etc. Also it may be a hotkey manager if it uses Alt + Tab or Alt + Shift + Tab. In rare instances try to enable option "Disable Windows XP Visual Styles for TaskSwitchXP" and disable "Drop shadow on TaskSwitchXP window".
Q: TaskSwitchXP works too slow. How can I hasten it?
A: Possible measures:
  1. Enable option "Set high priority for TaskSwitchXP".
  2. Enable option "Don't create exclusion region for window preview".
  3. Disable option "Drop shadow on TaskSwitchXP window".
  4. Disable option "Enable transparency for TaskSwitchXP window".
  5. Enable option "Disable Windows XP Visual Styles for TaskSwitchXP".
Q: How can I hasten window snapshot appearance?
A: Preview generation delay now depends on system keyboard repeat delay (Control Panel -> Keyboard, Repeat Delay). It may vary from 50 to 200 milliseconds.
Q: In the preview of minimized windows only the window bar is visible. How about displaying the last full-sized preview?
A: If it is done, TaskSwitchXP will work not so fast. Do you really want it?
Q: However I checked the box "Don't create preview region" and it still shows up. Is there a fix for this?
A: From version 1.0.23 this option is named "Don't create exclusion region for window preview". See description of this option.
Q: I'm very interested in your products. I think it'll be a good idea to publish TaskSwitchXP on a software CD.
A: Of course you can. But if you will change the original TaskSwitchXP distribution you must reproduce my copyright notice and all materials provided with my distribution (readme, license, history). See License.txt file for more information.
Q: TaskSwitchXP is really a good tiny tool, so would you mind I localize it to my native language?
A: TaskSwitchXP older version 1.1 doesn't support multilingual interface. If you want help me writting language files and documentation for new version 1.1 please mail me.
Q: I like your program, it uses MFC? I want to write something like that on Visual Basic. Can you help me?
A: I don't teach programming. I hate MFC: WinAPI rulezzz! VB and Delphi are not good programming languages for such tools, IMHO!!!
Q: TaskSwitchXP doesn't capture <application name> window (show black screen)! What's the stuff?
A: Sorry, I can't help you. It's a bug of PrintWindow API, i.e. it's Microsoft bug (for more information see PlatformSDK documentation). This mistake was marked with:
  • Some Java-applications (JBuilder, Java Web Start)
  • OpenOffice
  • Emacs


History of TaskSwitchXP

Version 1.0.26 (final), 7 October 2004

  • Some small bugs were fixed.

Version 1.0.25, 5 October 2004

  • Parameter "Set high priority for TaskSwitchXP" now is enabled by default.
  • Memory usage optimization!

Version 1.0.24, 3 October 2004

  • TaskSwitchXP documentation.
  • Bug with minimized layered windows was fixed (disabling transparency).
  • Bug with some hidden windows was fixed (same as Muxasoft Dialer, BeFaster).
  • Some small bugs with hung and debugged applications were fixed.
  • Some cosmetical changes.

Version 1.0.23, 30 September 2004

  • Some small bugs with window switching algorithm were fixed.
  • Bug with multiple exit confirmations was fixed.
  • Some cosmetical changes.

Version 1.0.22, 26 September 2004

  • Default TaskSwitchXP window sizes were changed.
  • New task info format (image name, PID).
  • Some small bugs were fixed.

Version 1.0.21, 25 September 2004

  • Bug with same windows (like an edit message in The Bat!) now was fixed.
  • Some small bugs were fixed.
  • Some optimization.

Version 1.0.20, 19 September 2004

  • Mouse over selection for icon list.
  • "Enable mouse over selection for icon list" configuration parameter.
  • Bug with same Firefox windows (1.0.18) was fixed.

Version 1.0.19, 16 September 2004

  • Bug with autostart registry string in previous version (1.0.18) was fixed.

Version 1.0.18, 15 September 2004

  • New better installer.
  • New window switching algorithm.
  • New particular keystrokes listening algorithm (similar to version 1.0.10 with RegisterHotKey).
  • New window switching algorithm (with SwitchToThisWindow).
  • TaskSwitchXP now can reload configuration settings (restart is not required).
  • Bug with floating toolbars was fixed.
  • Bug with unexpected TaskSwitchXP window destroy was fixed.
  • Bugs with full-screen console and 3D applications were fixed.
  • Bug with owned tool windows (same as PSPad dialogs) was fixed.
  • Bug with minimized window restore was fixed.
  • Small bug with selection of first inactive window was fixed.
  • Some small bugs were fixed.

Version 1.0.17, 8 September 2004

  • Bugs with AltTab hook in previous version (1.0.16) were fixed.
  • Bug with 2-Alt+Tab was fixed.
  • Bug with multiple owned windows of same owner was fixed.

Version 1.0.16, 5 September 2004

  • Bug with console windows was fixed.
  • Bug with full-screen applications was fixed.
  • Some small bugs were fixed.

Version 1.0.15, 31 August 2004

  • TaskSwitchXP is distributed only as special build (without CRT).
  • Small bug with Esc key was fixed.
  • Some small bugs were fixed.
  • Some optimization.

Version 1.0.14, 30 August 2004

  • Selection by mouse wheel for icon list.
  • "Inverse mouse wheel" configuration parameter.
  • Bug with minimized owner window was fixed.
  • Keyboard hook was optimized.
  • Some optimization.

Version 1.0.13, 28 August 2004

  • New window switching algorithm (over and over again).
  • First TaskSwitchXP special build (without CRT) - even SMALLER!!!

Version 1.0.12, 25 August 2004

  • Rendering with Windows Classic style.
  • "Force use Windows Classic style to draw TaskSwitchXP" configuration parameter.
  • TaskSwitchXP shows error icons for closed applications.
  • Bug with theme change was fixed.
  • Bug with null shadow deep was fixed.
  • Color of selection rectangle was fixed.

Version 1.0.11, 19 August 2004

  • Keyboard navigation for icon list (use Home, End and arrow keys).
  • New window switching algorithm (bug with fast window switching were fixed).
  • New particular keystrokes listening algorithm (without RegisterHotKey).
  • Delay of preview generation depends now on system keyboard delay.
  • New configuration parameter for window preview.
  • Some optimization.

Version 1.0.10, 30 July 2004

  • Tooltips for icon list.
  • Mouse control for icon list (selection and switching).
  • New configuration parameters for mouse control and for tooltips.
  • Some optimization.
  • Bug with "ghost-icon" was fixed.

Version 1.0.9, 14 July 2004

  • "Set high priority for TaskSwitchXP" configuration parameter.
  • New window enumeration algorithm.
  • New closed applications processing.
  • Bugs with "hung" applications were fixed.
  • Some small bugs were fixed.

Version 1.0.8, 20 June 2004

  • First public release.


Contact Information

Bug reports

You can post me bug reports via SourceForge Bug Tracking System or via email.

Before submitting a bug, please verify that there are no open bugs with the same report. Also, please check the latest changelog to see if the bug may have been fixed recently.

Please include the following in the report:

  1. Version of TaskSwitchXP you are using.
  2. Error message you get if any.
  3. A script that reproduces this bug if acceptable.
  4. A screen shot if something is wrong with the user interface.

Feature requests

You can post me feature suggestions for future versions of TaskSwitchXP via SourceForge Feature Requests Tracking System or via email.

Keep in mind that there are a feature that could have been added, but most of them will just make TaskSwitchXP huge, and no one wants that.

If you think it will be a useful feature, please give a detailed description of the feature you are requesting and make sure you don't post double requests.

If you have added a feature yourself, you can post me the source code via email.

Contact

  • Web site: http://taskswitchxp.sourceforge.net
  • Project page: http://sourceforge.net/projects/taskswitchxp/
  • Support email: as12@bk.ru


TaskSwitchXP License

License Agreement

Copyright (c) 2004 by Alexander Avdonin

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of the author nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Creadits

TaskSwitchXP uses:

  • FOOOD's Icons (with official permission)
  • Nullsoft Scriptable Install System 2.01
  • The Ultimate Packer for eXecutables 1.25

Special thanks

Thanks to the following people (in no particular order):

  • Ivan Pivovarov
  • Andre Pinheiro
  • Joakim
  • David C. Uhrig
  • Luke Hamburg
  • ... and all people who gave suggestions/bugreports.