Go Back   xda-developers > Windows Mobile Development and Hacking > Windows Mobile Apps and Games


Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 16th December 2005, 07:20 AM
BeyondtheTech's Avatar
BeyondtheTech BeyondtheTech is offline
Senior Member
 
Join Date: Jan 2005
Location: New Jersey
Posts: 452
Default Requesting tiny application: Clear Recent Start Menu Items

If you're like me, you've soft-resetted your device more times in one month than there are days in a year.

So, after a nice extended boot sequence with the new Windows Mobile 5.0, you click on the Start icon, only to wait nearly 30 seconds while it grabs all the icons from the various programs you have recently loaded, plus the ones you have stored permanently in your Start Menu. Of course, if you have recently launched Skype, you'll know it has to sift through nearly 4 or 5MB for that tiny icon data located at the end of the executable. Why Microsoft hasn't learned to cache icons permanently in a file is beyond me.

My temporary solution? With Resco Explorer, I launch a REG file in my \Windows\Startup folder that sets these registry entries:
Code:
[HKEY_CURRENT_USER\Software\Microsoft\Shell\TaskSwitch]
"6"=" "
"7"=" "
"8"=" "
"9"=" "
"5"=" "
"4"=" "
"3"=" "
"2"=" "
"11"=" "
"10"=" "
"1"=" "
"0"=" "
Of course, I get prompted to the effect of, "Do you want to import these registry entries...?" to which I have to click "YES." Then I have to acknowledge its confirmation that it did so by clicking "OK."

It's annoying at best, but so is the Recent Start Menu. I personally wish it wasn't there.

Is there anyone here able to make a tiny executable that will quietly delete the above registry entries? When placed in the StartUp folder, it will have wiped out all the recently loaded programs and keep the Start Menu nice and clean.

I have contacted Resco, PHM, TweakUI, and the other registry editing developers, none of which have either gotten back to me or claim that it's a "security issue" that they leave the confirmation in there.

All I want is a clean Start Menu. Can anyone help with a tiny executable, or better yet, find a way to remove the Recent Start Menu Items section from the Start Menu completely? Of course, making these registry changes will only take effect before the Start Menu is called for the first time after a soft reset, so it has to be placed in the StartUp folder.

Aaaugh, these tiny annoyances.

Another possible application is to make a tiny executable that simply launches another program. For instance, I'd like to keep a 2KB file that will launch Skype for me. I'll keep THAT file as a shortcut in the Programs Folder, while any other instance, such as launching Skype from the Contacts menu, will still launch the original executable. It's the fact that the Windows Mobile OS has to pull the icon data from each executable on the first run after a soft reset is so damn annoying.

If anyone can make a generic executable that can be easily hex edited to incorporate any executable's filename and manipulated by Microangelo or any other icon editor to copy and paste the icon data from the original executable to the launcher executable, that would be awesome. Imagine WM only having to look at a 2KB file for the stupid icon instead of each 500K-5MB file for it.

You guys following me on this one? Is there a brave and bright soul who can do these things?
__________________
My TECHIE GARAGE SALE going on! Check it out here...
Reply With Quote
Sponsored Links

  #2  
Old 16th January 2006, 05:24 PM
chinnybob chinnybob is offline
Junior Member
 
Join Date: Jan 2006
Posts: 7
Default

Here you go:

Code:
#include <windows.h>
#include <windowsx.h>

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
					LPTSTR szCmdLine, int iCmdShow)
{

    HKEY Software,Microsoft,Shell,TaskSwitch,tmp;

    RegOpenKeyEx(HKEY_CURRENT_USER, L"Software", 0, KEY_ALL_ACCESS, &Software);
    RegOpenKeyEx(Software, L"Microsoft", 0, KEY_ALL_ACCESS, &Microsoft);
    RegOpenKeyEx(Microsoft, L"Shell", 0, KEY_ALL_ACCESS, &Shell);
    RegOpenKeyEx(Shell, L"TaskSwitch", 0, KEY_ALL_ACCESS, &TaskSwitch);

    RegDeleteValue(TaskSwitch, L"0");
    RegDeleteValue(TaskSwitch, L"1");
    RegDeleteValue(TaskSwitch, L"2");
    RegDeleteValue(TaskSwitch, L"3");
    RegDeleteValue(TaskSwitch, L"4");
    RegDeleteValue(TaskSwitch, L"5");
    RegDeleteValue(TaskSwitch, L"6");
    RegDeleteValue(TaskSwitch, L"7");
    RegDeleteValue(TaskSwitch, L"8");
    RegDeleteValue(TaskSwitch, L"9");
    RegDeleteValue(TaskSwitch, L"10");
    RegDeleteValue(TaskSwitch, L"11");

}
Executable (arm only), Makefile:
Attached Files
File Type: zip startcleaner.zip (1.6 KB, 2030 views)
Reply With Quote

  #3  
Old 16th January 2006, 07:18 PM
baz baz is offline
Junior Member
 
Join Date: Nov 2004
Posts: 23
Default Works for me

Good work!

This worked first time for me.

Would somebody be willing to put this in the wiki?

Baz
__________________
Android on Kaiser!
Reply With Quote

  #4  
Old 16th January 2006, 10:26 PM
TofClock TofClock is offline
Senior Member
 
Join Date: May 2005
Location: Bordeaux
Posts: 268
Default

Quote:
Originally Posted by chinnybob
Here you go:

Code:
#include <windows.h>
#include <windowsx.h>

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
					LPTSTR szCmdLine, int iCmdShow)
{

    HKEY Software,Microsoft,Shell,TaskSwitch,tmp;

    RegOpenKeyEx(HKEY_CURRENT_USER, L"Software", 0, KEY_ALL_ACCESS, &Software);
    RegOpenKeyEx(Software, L"Microsoft", 0, KEY_ALL_ACCESS, &Microsoft);
    RegOpenKeyEx(Microsoft, L"Shell", 0, KEY_ALL_ACCESS, &Shell);
    RegOpenKeyEx(Shell, L"TaskSwitch", 0, KEY_ALL_ACCESS, &TaskSwitch);

    RegDeleteValue(TaskSwitch, L"0");
    RegDeleteValue(TaskSwitch, L"1");
    RegDeleteValue(TaskSwitch, L"2");
    RegDeleteValue(TaskSwitch, L"3");
    RegDeleteValue(TaskSwitch, L"4");
    RegDeleteValue(TaskSwitch, L"5");
    RegDeleteValue(TaskSwitch, L"6");
    RegDeleteValue(TaskSwitch, L"7");
    RegDeleteValue(TaskSwitch, L"8");
    RegDeleteValue(TaskSwitch, L"9");
    RegDeleteValue(TaskSwitch, L"10");
    RegDeleteValue(TaskSwitch, L"11");

}
Executable (arm only), Makefile:
Hey man , great work

Can i include this great app on a himalaya rom ?
__________________
Qtek 2020 - SFR(France)

OS: 2.03aWWE Beta
Radio: 1.17

THANKS to Buzz, Bepe, Mamaich, Asukal ...
THANKS to all users for their support
----
http://www.pilipub.com
Reply With Quote

  #5  
Old 19th January 2006, 12:48 PM
chinnybob chinnybob is offline
Junior Member
 
Join Date: Jan 2006
Posts: 7
Default

Do whatever you want with it.

It's public domain.
Reply With Quote

  #6  
Old 1st July 2006, 04:55 AM
chopel chopel is offline
Junior Member
 
Join Date: May 2006
Posts: 4
Default

Quote:
Originally Posted by chinnybob
Here you go:

Code:
#include <windows.h>
#include <windowsx.h>

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
					LPTSTR szCmdLine, int iCmdShow)
{

    HKEY Software,Microsoft,Shell,TaskSwitch,tmp;

    RegOpenKeyEx(HKEY_CURRENT_USER, L"Software", 0, KEY_ALL_ACCESS, &Software);
    RegOpenKeyEx(Software, L"Microsoft", 0, KEY_ALL_ACCESS, &Microsoft);
    RegOpenKeyEx(Microsoft, L"Shell", 0, KEY_ALL_ACCESS, &Shell);
    RegOpenKeyEx(Shell, L"TaskSwitch", 0, KEY_ALL_ACCESS, &TaskSwitch);

    RegDeleteValue(TaskSwitch, L"0");
    RegDeleteValue(TaskSwitch, L"1");
    RegDeleteValue(TaskSwitch, L"2");
    RegDeleteValue(TaskSwitch, L"3");
    RegDeleteValue(TaskSwitch, L"4");
    RegDeleteValue(TaskSwitch, L"5");
    RegDeleteValue(TaskSwitch, L"6");
    RegDeleteValue(TaskSwitch, L"7");
    RegDeleteValue(TaskSwitch, L"8");
    RegDeleteValue(TaskSwitch, L"9");
    RegDeleteValue(TaskSwitch, L"10");
    RegDeleteValue(TaskSwitch, L"11");

}
Executable (arm only), Makefile:
So you mean, after I run this file then I have to softreset right?
What I got from you is I have to softreset all the time when the recent program has full.
Anyway to disable it? like in PPC2002, I can disable it in my PPC2002 Tosh E740. But I cant do that in my wm2005 (O2 Atom)

Thanks.
Reply With Quote

  #7  
Old 31st March 2007, 09:02 PM
bluecream4's Avatar
bluecream4 bluecream4 is offline
Senior Member
 
Join Date: Oct 2006
Location: Bangkok, Thailand
Posts: 106
Default

Hi chinnybob and BeyondtheTech,


This is my favourite Program that I first install after every Hard Reset

Nice Job .. ~♪


Cheers,
Nette。_・☆
__________________
Changing your WM5 devices looks like Crossbow.

@~My Sweet Himalaya~@
ROM: 3.50c.40CS Radio: 1.19

*~My Little Atom~*
☆・_。My Prophet Cream 。_・☆

Last edited by bluecream4; 31st March 2007 at 09:16 PM..
Reply With Quote

  #8  
Old 13th July 2007, 07:38 PM
n3rxs's Avatar
n3rxs n3rxs is offline
Member
 
Join Date: May 2007
Location: Atlanta, GA
Posts: 98
Default

my 8125 keeps complaining it not a signed app
__________________
For the world is hallow and I have touched the sky............

----------------------------------------------------
Tilt 8925
Custom Windows 6.1 w/o Bloatware
HardSPL 3.29
Radio 1.65.21.18
Reply With Quote

  #9  
Old 13th July 2007, 09:28 PM
ShrewLWD ShrewLWD is offline
Junior Member
 
Join Date: Jul 2007
Location: Minneapolis
Posts: 2
Default

I went about it a different way.
I created a Folder called Applications in the Windows \ Start Menu folder.
I then moved all the icons (except a favorite app) out of the Programs folder and into Applications.
I then used Resco File Explorer and changed the Properties of the Programs Folder to Hidden.
Voila! Recent Programs disappear! No need to clean out the registry.
The reason I leave a favorite app in the Programs folder is because the Menu bar will state 'Recent Programs' greyed out as a place holder where the Recent Items used to sit. Having a default app there forces at least one to stay. I left Resco File Explorer's shortcut.

Hope this helps!
Reply With Quote

  #10  
Old 4th September 2007, 07:40 AM
mrgino mrgino is offline
Junior Member
 
Join Date: Jan 2007
Posts: 9
Default wm6

this doesnt seem to work anymore on WM6...can someone possibly update the program?
Reply With Quote

Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +1. The time now is 10:48 PM.


Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.