How can I make the WinKey+[number] combination run the [number]th item in Windows XP's Quick Launch bar? In other words, I want to mimic the Windows 7 behavior.
- 8,623
- 23,629
2 Answers
Sure is, use HotKeyBind
http://www.technixupdate.com/assign-window-hotkeys-to-quick-launch-items-in-win-xp-with-hotkeybind/
First Download and install HotKeyBind.
You will see a gray colored icon in the task bar if it is running
Double click on this icon a new window will appear
Click on the Add button, and select the option which says Launch a File >> Executes a Program and Click Ok
Browse to the target quick launch items folder , path for it would be :\Documents and Settings\\Application Data\Microsoft\Internet Explorer\Quick Launch
For Example: C:\Documents and Settings\zapper\Application Data\Microsoft\Internet Explorer\Quick Launch
Note: Make sure the that Show hidden files and folder is set to shown in folder options before browsing to this path. Other wise copy the path above and paste it in the address bar and drag the quick launch items on the target box.
After selecting the shortcut for the program like Gtalk in quick launch items click Ok
A New window will open up with title as Edit Keys , click the checkbox WIN and press any number key.
As Google talk is the first item in my quick launch after Start button so I have set the shortcut for it as Win +1
- That’s it Done
- 58,769
I just wrote a program to do this myself.
Base64-encoded version of my executable:
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
Source code:
//Flags: /O1 /link /NoDefaultLib /entry:WinMainCRTStartup /Subsystem:Windows
//No need for a C runtime library...
#define _WIN32_WINNT 0x502
#include <tchar.h>
#include <windows.h>
#include <commctrl.h>
static HHOOK hHook = NULL;
LRESULT CALLBACK KeyboardHook(IN int nCode,
IN WPARAM wParam, IN LPARAM lParam)
{
BOOL suppress = FALSE;
LPKBDLLHOOKSTRUCT pKBDHS = (LPKBDLLHOOKSTRUCT)lParam;
int nKey = pKBDHS->vkCode - 0x30;
if (nCode >= 0 && wParam == WM_KEYDOWN && 0 <= nKey && nKey <= 9)
{
if (nKey == 0)
{
/*Quit*/
suppress = TRUE;
PostQuitMessage(0);
}
else if (GetKeyState(VK_LWIN) < 0 || GetKeyState(VK_RWIN) < 0)
{
HWND hWnd = GetDesktopWindow();
if (hWnd != NULL)
{ hWnd = FindWindowEx(hWnd, NULL, _T("Shell_TrayWnd"), NULL); }
if (hWnd != NULL)
{ hWnd = FindWindowEx(hWnd, NULL, REBARCLASSNAME, NULL); }
if (hWnd != NULL)
{
hWnd = FindWindowEx(hWnd, NULL,
TOOLBARCLASSNAME, _T("Quick Launch"));
}
if (hWnd != NULL)
{
suppress = TRUE;
DWORD btnSize = SendMessage(hWnd, TB_GETBUTTONSIZE, 0, 0);
LONG coord = MAKELONG((nKey - 1) * LOWORD(btnSize), 0);
PostMessage(hWnd, WM_LBUTTONDOWN, 0, coord);
PostMessage(hWnd, WM_LBUTTONUP, 0, coord);
}
}
}
if (suppress) { return 1; }
else if (hHook == NULL) { return 0; }
else { return CallNextHookEx(hHook, nCode, wParam, lParam); }
}
int WinMainCRTStartup()
{
HINSTANCE hInstance = GetModuleHandle(NULL);
hHook = SetWindowsHookEx(WH_KEYBOARD_LL, &KeyboardHook, hInstance, 0);
if (hHook != NULL && hHook != INVALID_HANDLE_VALUE)
{
MSG msg;
BOOL success;
while (success = GetMessage(&msg, NULL, 0, 0))
{
if (success == -1) { break; }
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
return 0;
}
- 23,629