Related
Let's start a thread of all the reg tweaks ppl have come up with. If they are saved as .reg files (to an SD), we can install them with a mere double-click by using TRE (options>associate), and anyone can contribute to this post WITHOUT having to build .cab files! Why is this kewl; cos when u hard reset it's a real ball-ache to go back into all the forums to find the tweaks u applied and to navigate thro TRE to re-apply them all. This applies particuarly to settings (Owner info etc). Over and above, we are no longer beholden to tweak shareware, but have full and instant control over our settings.
Each tweak should have 2 reg files; Apply the tweak, and remove the tweak (if possible). In this manner, we can have a directory of reg files, and can turn on and off tweaks with a simple d.click.
Attached is a basic set I've compiled. Please let everyone know if any are a problem (ie perhaps whole key gets replaced and overrides something u have already changed). Files described below:
[*]Reg Date_In_Titlebar ON.reg
Adds the date to the title bar, with format according to your short-date format under settiings>regional (or found manually changed in another Tweak I'll cover later). I do NOT have a .reg file that will undo (ie delete) this new key, but it's easy to see what key is being added so u can delete it. <Credit: Well known PPC tweak - I probably learnt from toenailed>
Can someone please find out where we can change the font for this - it's a horrible bold font that doesn't fit in the space available?
[*]Reg Font_Menu_+_Pop_700 ON.reg
Change menus and popups to a smaller font. Nice size, makes VGA look more VGA-like, yet not so small that it fails cleartype nor looks daft. Requires a reset. <Credit: Well known PPC tweak - I probably learnt from toenailed>
[*]Reg Font_Menu_+_Pop_900 DEFAULT.reg
Reset above change to default of 900
[*]Reg Font_System_700 ON.reg
Changes system font to 2 pts smaller. I find that dialog boxes with radio buttons got a bit wierd, and you don;t get much more screen estate height cos of icon sizes staying the same in file lists, so I don't bother with this tweak. Requires a reset. <Credit: Well known PPC tweak - I probably learnt from toenailed>
[*]Reg Font_System_900 DEFAULT.reg
Turn above off
[*]Reg GPRS_+_3G_Always _On DEFAULT.reg
Awesome tweak to make sure ur phone connects to GPRS/3G and stays there. However, you'll want to switch this off overnight etc, which is the main reason I created this post and these reg files. NOTE: you will absolutely HAVE to replace the "MTN SA Web" bit with the name of your connection which you will find in this key using TRE
<Credit: BrettS http://forum.xda-developers.com/viewtopic.php?t=30277>
[*]Reg GPRS_+_3G_Always _On ON.reg
Turn off the above. Remember to change connection name in file
[*]Reg PIE_Homepage_Default.reg
When u press the E (explorer) keyboard key u go to clubimate homepage - annoying. This resets that hard button to whatever u want (current reg file is windows\default.htm)
<Credit: I forget, someone on clubimate forums>
[*]Reg TerminalServices_Cache_Larger DEFAULT.reg
AWESOME improvement in Terminal Services client horrible black blocks. Increases cache sizez - I did not notice an increase in traffic/cost
<Credit: Carnivor from MS KB http://forum.xda-developers.com/viewtopic.php?t=29996>
[*]Reg TerminalServices_Cache_Larger ON.reg
Turns above off
More coming as I go thro the wiki and toenailed tweak posts and extract usefull ones for us lonely Universal users...
can you add the actual keys to here?
http://wiki.xda-developers.com/index.php?pagename=Universal_Registry
cos of this thread
http://forum.xda-developers.com/viewtopic.php?t=30396
Doh! That post came up after I started this thread.
Still this thread is useful for the actual .reg files to same n00bies some time (and to save me time too). I'll make sure everything here is duplicated there tho.
Here are a few more .reg files:
Several versions of date_in_title_bar (covered above)
Hide_Screen_Rotation icon
Hide that icon that allows u to rotate screen - but JJ does it automatically so Icon is not so necessary
Regional_settings
These are for me - u should edit file in text editor to customise 4 yourself. Best part is my short date format that keeps date in title bar small and visible
Ringtone_settings
Customise as above
Screen_Speed_Glyph_Cache
Double your screen cache. COsts a LITTLE memory, and improves screen size
Screen_font_'smaller'
Set screen font size to "smaller". This can be changed in "settings"m and I only include it here in line with my suggestion that we have a collection of files to run quickly on reset. You may want to customise as above
SIP_Settings. Ditto
All in updated zip file.
I would really appreciate if anyone can find a way to get rid of the Last Call in the dialer screen... I know its somewhere hidden in Registry, but I dont seems to be finding a way to get tru it...
Having the Last Dialed No. showing rite up on the Dialer Screen is really bothering and if you happened to press the phone button by mistake twice there we go the last dialed no. has been dialed already for you....
Bump: no-one contributing to this learning?
haven't found anything else worth posting yet m8, u got the best ones already :wink:
craigiecraigie4: Thanks for these - great idea!
I have a suggestion:
HKCU/ControlPanel/Backlight sets the backlight duration for the keyboard (in seconds). It's available through the control panel, but I like it set to more than the CP maximum of 10 seconds. Sorry - I don't know how to create a reg file.
To reset, choose another value in the backlight control panel applet.
Don't have any others to add though
Found another one:
Change the width of the vertical scroll bar and the height of the horizontal scroll bar so they take less room on the screen:
HKLM\System\GWE
Change cxVScr to (say) 10 to make vertical scrollbar narrower. Default value is 14
Change cyHScr to (say) 10 to make horizontal scrollbar narrower. Default value is 14
This change affects various scroll options in the system including the up/down arrows in selection boxes. 10 is a nice size.
This one is in this forum:
from davidberrysmith
--------------------------------------------------------------------------------
Any body remember these reg tweaks from himalaya? they still work
*** Speed Up Your Windows Mobile Pocket PC.
1. Open your registry editor o_n your Pocket PC
2. Navigate to HKEY_LOCAL_MACHINE\SYSTEM\GDI\GLYPHCACHE\
3. Change the value of 'limit' from 8192 to 32768
4. Close registry editor and soft reset.
*** disable start menu animation
Browse to HKEY_LOCAL_MACHINE\SYSTEM\GWE\Menu\
Change the "AniType" value from 6 to 0.
_________________
i-mate jasjar
Click to expand...
Click to collapse
SiliconS said:
Found another one:
Change the width of the vertical scroll bar and the height of the horizontal scroll bar so they take less room on the screen:
HKLM\System\GWE
Change cxVScr to (say) 10 to make vertical scrollbar narrower. Default value is 14
Change cyHScr to (say) 10 to make horizontal scrollbar narrower. Default value is 14
This change affects various scroll options in the system including the up/down arrows in selection boxes. 10 is a nice size.
Click to expand...
Click to collapse
Nice one dude. I can't make the .reg file cos I can only create reg files of the entire key, and there are too many other things under GWE that users may have changed.
Internet Explorer
Somewhere in those forums I found the IE reg hack to make mine 5.5, this helps connecting to my bank account and viewing other secured sites.
read this somewhere
To change the ability to receive files via Bluetooth (OBEX)
The setting is at 'HKEY_LOCAL_MACHINE\Software\Microsoft\Obex'
The 'IsEnabled' DWORD value should be set to '1' to enable OBEX and '0' to disable OBEX.
For example, to enable the ability to receive fles via Bluetooth
HKEY_LOCAL_MACHINE\Software\Microsoft\Obex\IsEnabled = 1
says receive so i dont know about send, try it!! might be it
But apparently now this is the same feature as the receive incoming beams setting in connections.
Yes, I know that's not free but 90% of all this hacks have been included in Tweaks2K2. And the other 10% are about to be included :twisted:
Yeah, true. Idea of this thread was to have a facility whereby a hard reset can be quickly restored to a working device - install a few basic apps, run the .reg files, and there u go. Takes me about half an hour from HR thro to up and running perfectly.
craigiecraigie4 said:
Yeah, true. Idea of this thread was to have a facility whereby a hard reset can be quickly restored to a working device - install a few basic apps, run the .reg files, and there u go. Takes me about half an hour from HR thro to up and running perfectly.
Click to expand...
Click to collapse
With your .reg files as inspiration I'm just about getting there in the same way. I've written down all the steps and I just run through them. I've done this since I had my XDA2 and it makes a hard reset so much less traumatic:
Code:
Hard reset. Wait for Today screen then soft reset.
Connect cable to ActiveSync. Set up guest connection.
Turn off beams, error reporting
Set basic clock accuracy
Copy Step 1 files to root of PPC [These are the CABs for the programs I install]
Run CABs. Leave O2 Connections CAB. Put gps.CAB and PIMAddin onto storage card
Run TRE registry editor. Associate .reg files to TRE
Open the .reg file [This applies my registry settings. See below]
Run O2 connections CAB
Copy all Step 2 files to root of PPC [This adds shortcuts to StorageCard-installed programs to my Start Menu and gives me my freeware email client and PZP icons and profiles]
Run SDK Certs CAB
Run OzVGA. Change all fonts to same size as qVGA
PPC: edit registry: browse to HKLM\ControlPanel\GPS Settings. Delete the DWORD marked "hide"
CPL > Personal > Buttons: match Button 2 to [Task switcher], Button 4 to <Rotate Screen>; Set button lock
CPL > Personal > Menus: ActiveSync, File Explorer, Internet Explorer, nPOPw, Pocket Informant, Task Manager, TomTom Navigator
CPL > Personal > Owner: set owner information
CPL > Personal > Phone: change band to GSM
CPL > Personal > Today: set items to Date, PZP, PocketPlus, PocketBreeze, Messaging; set theme to Windows Default
CPL > System > Clock: Show time on all screens
CPL > System > Regional: Set locale to UK
CPL > Connections > GPS: set program port COM0
Soft reset
Set password for PPC
PC: backup previously sync'ed files folder
PC ActiveSync: delete previous partnership. Don't delete sync'ed files folder
CPL > System > About: Set DeviceID = XDAExec
Connect PPC and PC with cable
Sync only Contacts, Calendar (all), Tasks, Favourites
Sync files. Replace the items on the device
PocketBreeze: import settings
PocketPlus: import settings
PocketInformant: run and let it fanny about
PocketWeather (on PocketBreeze tab): import settings
Run ListPro. Enter registration code
Disconnect from PC
Set up phone speed dials
Set up voicedial tags
Set up ActiveSync via Bluetooth to Workstation
Set up bond to headset
Set up bond to GPS thingy. Choose Serial Port as profile
Start TomTom Navigator. Run through startup.
InternetExplorer: sort out view settings. Set default page to about:blank
Choose Transcriber input method. Import settings file
This is my .reg file that does almost everything I need done in one step:
Code:
[HKEY_LOCAL_MACHINE\ControlPanel\GPS Settings]
"Group"=dword:00000002
[HKEY_CURRENT_USER\ControlPanel\Backlight]
"QKeyLedTimeout"=dword:0000001e
[HKEY_CURRENT_USER\Software\Microsoft\Terminal Server Client]
"Keyboard Layout"="00000409"
"BitmapPersistCacheSize"=dword:00000001
"BitmapCacheSize"=dword:00000015
[HKEY_LOCAL_MACHINE\System\GDI\GLYPHCACHE]
"limit"=dword:00004000
[HKEY_LOCAL_MACHINE\nls\overrides]
"SSDte"="d/M "
[HKEY_LOCAL_MACHINE\HARDWARE\OEM\KEYBD]
"PieHomePage"="about:blank"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Shell]
"TBOpt"=hex:\
13,00,00,00
It makes a massive difference using commercial software that has a reliable import/export process for the settings and this, IMHO, is usually the biggest difference between paid-for software and freeware alternatives.
Silicon, don't u want to re-post your post here:
http://forum.xda-developers.com/viewtopic.php?t=31697
We need more of these 'standard' configs to help new users get up n running without giving up on their universal.
dude, your screen - how?
craigiecraigie4
how did you make htc look like that?
is it standard? emailable? I don't really want the merc style if it can be changed, but its a nice screen all the same
Re: dude, your screen - how?
simon_darley said:
craigiecraigie4
how did you make htc look like that?
is it standard? emailable? I don't really want the merc style if it can be changed, but its a nice screen all the same
Click to expand...
Click to collapse
You don't want merc!! well u can just f off then! ;-)
It's WisbarAdvance2 with WAD - see another post I started in this forum. u can put in on any universal, with whatever walpaper u want, and there are plenty of free skins
Re: dude, your screen - how?
craigiecraigie4 said:
It's WisbarAdvance2 with WAD - see another post I started in this forum. u can put in on any universal, with whatever walpaper u want, and there are plenty of free skins
Click to expand...
Click to collapse
Whatever it is, it's distracting to have such a big picture in your signature in such text-based forums.
Sorry craigiecraigie4. Don't mean to offend. Just MHO.
Hi,
Here is my contribution. The program will remap the softkey buttons and volume buttons:
tap soft key = orginal soft key functions
tap and hold left soft key = start menu
tap and hold right soft key = close/ok button
volume slider at the left = page up/down
You can also use the DPAD to do some extra actions in phone app.
NOTE: If you got notification error, please run smartskey.exe and then run smartskey.exe to close the app. The program will now close all notification that relate to smartskey when it is closed.
Update:
0.60 (2007-08-23)
Fixed: Make DPAD function work on WM6
Fixed: Fix DPAD function not compatible with TomTom
0.56 (2006-11-17)
Fixed: Fix compatibility with CeleDial
0.55 (2006-11-15)
Fixed: Compatible with CeleDial
Fixed: DPAD function will call default Contacts/Text Messaging instead of calling original Contacts/Text Messaging directly. So if you have installed any third party replacement, it will be called when DPAD in Phone app is pressed.
0.54 (2006-11-06)
Fixed: Endless loop when using “OK” button of keyboard in Wizard.
0.53 (2006-06-23)
Fixed: DPAD on will not affect TomTom and calendar
Fixed: remove notification routine will remove all paths so that it will not prompt wrong notification path anymore when user change the location of the smartskey.exe
0.52 (2006-03-26)
Fixed: DPAD functions still apply in SmartDial dialog.
0.51 (2006-03-20)
Fixed: Can use volume key to switch to vibrate, off mode by volume slider
Fixed: Exception List will not check the classname of the window as well, so you can also put applications that will change title in the list.
Added: change the behavior of the dpad, and user can set the action for each direction using DUP, DDOWN, DLEFT, DRIGHT
0.5 (2006-03-19)
Add: DPAD, use dpad for additional action (call log, messaging, programs, contacts) in phone app.
Add: VOLUMEONTODAY, volume key will check the topmost app is today or not
Fxied: improve force closed function.
0.41 (2006-03-11)
Fixed: will not overwrite ini files
Fixed: make executable smaller
Added: PAGEONEXPLORE, use soft key to scroll page in “Programs”
0.4 (2006-02-25)
Fixed: rewrite force closed function again
Added: VOLUMEONPHONE, volume key will check the topmost app is phone or not
Added: REMOVEDUPSDDAEMON, automatically remove duplicated sddaemon events.
Added: OMAPCLOCK, omapclock wrapper to set clock automatically after wake up.
Added: STARTMENUMETHOD, provide alternate method to popup start menu.
...
water
THanks!
Great!
Hi Water,
Great little program! Very useful!
Wouter
very good. With your soft and with xbar I can use my wizard with one hand only...
thanks
does "close" function really close the app, or it is a standrad Windows "close"?
And... If you share the source code... ;-)
Now do exactly as pressing the OK button on the keyboard, so hide only. Actually close is much easiler in programming aspect
[feature request]
is there a chance then that at some stage of the development of the tool it would actually ok/close, and not ok/hide the apps?
[/feature request]
That is a nice idea (I just got my 8125 and I was thinking of that EXACT setup)
One thing I would ask for, if its not too much trouble...
Can you make another progy that does everything (start menu and ok/minimize) except the volume scroll? I like to change the volume while in a call and such.
Thanx and really nice job; Lew
EDIT: Better idea.
Include a config file for the program, here's an example.
Code:
LeftSoftKey = 1 // 0 = default 1 = hold for start menu
RightSoftKey = 1 // 0 = default 1 = hold for ok/minimize 2 = hold for ok/close
VolumeScroll = 0 // 0 = default (volume control) 1 = Scroll
I think that's a good idea. Let me know what you think?
Later; Lew
Is it easy to re-configure the tap and hold functions??
okay, add one more version without volume keys remap. For close button request, I may do it when I am free.
The program cannot be configured because actually no interface.
wow man. thanx for such a fast response . I was just in bed when I decided to check one last time (from my wizard of course)
So can the settings for the program be set by a config file? Can it read the the cfg file and use the settings in it as variables for how it will handle the different key press events?
Thanx again... awsome sauce man!
Later; Lew
Is it possible to automaticly switch beteween volume when using the telephone and prev/next page if the telephone is not used.
This would complete your program.
Ferry
This is one of the mose useful bits of software I have come across for the Wizard. Simple but oh so effective Like others have said, one-handed operation is now much more simple.
Well done water
This is one of the mose useful bits of software I have come across for the Wizard. Simple but oh so effective Like others have said, one-handed operation is now much more simple.
Well done water
This is fantastic! Thank you very much water.
I have what I think is a simple question.
I have put the smartkey in my startup, now lets say I don't want it to start up any more. How can I get it out of start up?
I already tried deleting it it says access denied on the Wizard and if I try from PC.
Any thoughts?
Later; Lew
lewcamino said:
I have what I think is a simple question.
I have put the smartkey in my startup, now lets say I don't want it to start up any more. How can I get it out of start up?
I already tried deleting it it says access denied on the Wizard and if I try from PC.
Any thoughts?
Later; Lew
Click to expand...
Click to collapse
delete the shortcut from startup, and then restart the phone.
Yeah... that means im an idiot...
I didn't put a shortcut in the startup folder... I put the exe int he startup folder. Go ahead... point an laugh, lol, I would.
So now knowing that, any other suggestions?
Later; Lew... the dork of the day.
lewcamino said:
Yeah... that means im an idiot...
I didn't put a shortcut in the startup folder... I put the exe int he startup folder. Go ahead... point an laugh, lol, I would.
So now knowing that, any other suggestions?
Later; Lew... the dork of the day.
Click to expand...
Click to collapse
you can't delete it because it is running. stop the process (memory cp app) and then delete it.
Hi folks,
You guys might already know about this but I just discovered how to do it after doing some heavy googling over the past couple of days. Many thanks to the guy at this link who made the discovery!
How to lock down the clock on Windows Mobile devices
I was reading through some of the messages on the microsoft.public.dotnet.framework.compactframework newsgroup when I came upon a real gem of a message.
The key piece of knowledge being, that there is a special registry key, that will disable GUI access for the clock on Windows Mobile devices.
Application State Registry Key for Windows Mobile Clock
HKEY_LOCAL_MACHINE\Software\Microsoft\Clock\
If this is set to 0x11 the clock is enabled, as by default. If it is set to 0x30, or probably anything not 0x11, it is disabled and ignores any attempts to run.
If you are writting any kind of salesforce automation applications, or route management software, then you can see just how useful this feature is. You just add a special admin feature to enable and disable the ability to set the time, or handle it entirely from within your application.
Now I just need to find out why this key even exists, since I hate to find out the OS likes to change it under circumstance X.
// disable clock
System.Byte[] offValue = new byte[1];
offValue [0] = 0x30;
OpenNETCF.Win32.RegistryKey registryKey =
OpenNETCF.Win32.Registry.LocalMachine.OpenSubKey(@"\Software\Microsoft\Clock\", true);
registryKey.SetValue("AppState", offValue);
registryKey.Close();
// enable clock
System.Byte[] onValue = new byte[1];
onValue[0] = 0x11;
OpenNETCF.Win32.RegistryKey registryKey =
OpenNETCF.Win32.Registry.LocalMachine.OpenSubKey(@"Software\Microsoft\Clock\", true);
registryKey.SetValue("AppState", value);
registryKey.Close();
Click to expand...
Click to collapse
And the link to the original source -
http://www.cjcraft.com/Blog/PermaLink.aspx?guid=0b590db3-cc90-45fa-822e-acf91f031052
I was pulling my hair out over that one the last couple of days!
Cheers,
Dav
Hi dav!
I am sorry to burst your bubble, but I tried this registry hack, and found there is an easy way around it, with out editing the registry.
If you hold the OK hardware button (in the center of the joystick, on those devices that have it) then tap and hold the clock (in the task bar) you get a little menu with 2 options: Run and Clock.
If you choose clock from this menu, the app will start and the registry setting will automatically be altered so you will be able to open clock settings normally from now on.
Further investigation showed that the lower 4 bit of the AppState walue (ones digit) simply selects on what tab the clock app will open. Legal values are 1-3. Any illegal value (like 0) will jam the app preventing it from opening by tapping the icon in settings. I suspect that if a command line switch is specified it overwrites the registry value and the app opens any way. (that’s how the menu works)
Just thought you should know.
Hi levenum,
Thanks for the insights! I just tried it too and sadly that is the case ;-( Mmmh, I wonder if there is a way to hide 'Clock' from the Run\Clock thingy? or disable the Clock in some other way?
mmh, back to the drawing board...
Dav
Here's what you might try:
Create a cab that deploys an empty clock.exe to windows directory on the device.
Clock.exe is a ROM file, but a cab should be able to overwrite it (it won't work manually). This way no matter who calls it (menu or control panel) they will see the empty exe and nothing will happen.
Sounds like a good idea to me! I'll give it a try and see how it goes. Thanks for your continued help
Dav
Worked nice Thankyou!
btw, do you think that overwriting the Clock.exe would have any effect on the 'displaying' of the date in the Today Screen? By clicking the date we launch the Clock.exe program, but something else other than Clock.exe must control what shows the current date, right? I mean, the current date wouldnt just stay on the date on which we delete Clock.exe?
Cheers and thanks again,
Dav
Actually, if the exe was responsible for the date on the today screen, you wouldn't see anything once you overwritten it. Today date is just another plug-in. I think its clockdll.dll but I am not sure. Whatever the file name, it takes the date directly from the system clock.
As I understand it clock.exe is just a little GUI utility for setting system time, and alarms.
That sounds right and what i was thinking, always good to have a second opinion for confimration.
All the best,
Dav
seems like you guys might know what your doing, so do you know how to get the battery removed and the clock back on the today screen of WM5 latest rom releases....
levenum said:
Hi dav!
I am sorry to burst your bubble, but I tried this registry hack, and found there is an easy way around it, with out editing the registry.
If you hold the OK hardware button (in the center of the joystick, on those devices that have it) then tap and hold the clock (in the task bar) you get a little menu with 2 options: Run and Clock.
If you choose clock from this menu, the app will start and the registry setting will automatically be altered so you will be able to open clock settings normally from now on.
Further investigation showed that the lower 4 bit of the AppState walue (ones digit) simply selects on what tab the clock app will open. Legal values are 1-3. Any illegal value (like 0) will jam the app preventing it from opening by tapping the icon in settings. I suspect that if a command line switch is specified it overwrites the registry value and the app opens any way. (that’s how the menu works)
Just thought you should know.
Click to expand...
Click to collapse
wow..thanx for this. worked like a charm on my wing (and 2 yrs after it was posted i might add =P). i thought my alarm clock was lost FOREVER!
Hi,
I found the following code in this discussion thread:
// disable clock
System.Byte[] offValue = new byte[1];
offValue[0] = 0x30;
OpenNETCF.Win32.RegistryKey registryKey =
OpenNETCF.Win32.Registry.LocalMachine.OpenSubKey(@"\Software\Microsoft\Clock\", true);
registryKey.SetValue("AppState", offValue);
registryKey.Close();
It looks pretty useful to me but It has some OpenNETCF keyword.
Please suggest me what is OpenNETCF? Is it an additional third
party compact framework and how can I get this?
Also, if it is inbuild reference by Microsoft, from where to get it?
-Abhishek Maitrey
OpenNETCF is an extra SDK for WiMo devices. Search for it....
In this situation it's not needed.
X1BC v1.1
X1 Button Controller
Feb 12, 2009
By Jonathan King
Description
This program is released open source. Contact me if you would like a copy of the source. The program is capable of capturing both short and long presses of panel key, ok key, L/R softkeys, up/down volume keys, and the win key on the slide out KB. The camera half and full press can also be captured and fully configured for short and long half press, as well as short and long full press. Also, the camera key will be ignored while the camera program is open. Capturing each key is all optional. They can be switched by the registry keys detailed in the next post. By default, if the reg keys are not there, none are captured. You can capture the long press only, short and long press, or leave the key alone. Fn key presses are also detected for A, S, D, F, G, Z, X, C, and V keys. Registry strings are used to specify what happens when the key is pressed. You can choose to open execute anything from a program exe to a mortscript to an mp3. You may also configure it to send a character or special key. This allows maximum flexibility.
The program can also make the win key or tab key a ctrl key. There are two modes of operation for each key. For the win key: Short press mode (short press to enable ctrl then press a letter), Long press mode (press letter while holding ctrl). With the tab key, it is still possible to send a tab character: Short press mode (short press to enable ctrl then press a letter; long press sends tab chr), Long press mode (press letter while holding ctrl; short press sends tab chr).
The program also supports vibrate feedback for a press and hold event. The duration is configurable or this can be disabled. Also configurable is the duration you must hold a key for the long press to occur.
To start the key hook, just launch X1BC.exe. If it is already running, launching X1BC.exe again will end the program and restore the keys to default.
Notes
While the panel key is captured, on the ROM I run with no panels installed I still get a popup saying could not find panelmanager.exe. I am not sure what would happen on a ROM with panels installed. To prevent this all together delete the whole registry key HKLM\Software\Sony Ericsson\PanelManager. You may want to back it up first but there is not harm in deleting it. You do need this key if you want to use panels though. But if you do use panels you dont want to remap the panel key anyway.
Capturing the win key on the slide out KB is tricky, but I think I have done it in a way that wont cause problems. It works well as a ctrl key and I havent had problems with it, but I still think the tab key makes a better ctrl key because it behaves like a regular key and is therefore easier to manipulate.
Disclaimer, use at your own risk. I have tested and debugged in the emulator and on my X1. I dont do anything that I think could really cause any harm or data loss. Has never crashed on me at any point during dev. The program does not make any changes to the system. It just runs in the background. If terminated everything works as it did before the program was started. Try it out.
Registry settings:
The following are DWORD values:
HKCU\SOFTWARE\JKing\X1BC\CapturePanel
HKCU\SOFTWARE\JKing\X1BC\CaptureOK
HKCU\SOFTWARE\JKing\X1BC\CaptureLeft
HKCU\SOFTWARE\JKing\X1BC\CaptureRight
HKCU\SOFTWARE\JKing\X1BC\CaptureVolumeUp
HKCU\SOFTWARE\JKing\X1BC\CaptureVolumeDown
HKCU\SOFTWARE\JKing\X1BC\CaptureLWIN
Here are the possible choices:
0 - Leave the key alone
1 - Capture long press only
3 - Capture long and short press
The default if the value does not exists is 0
The following is also a DWORD but the format is different:
HKCU\SOFTWARE\JKing\X1BC\CaptureCamera
The possible choices are:
0 - Leave the key alone
1 - Capture long and short for half press only
2 - Capture long and short for full press only
3 - Capture long and short for both half and full press
The default if the value does not exists is 0
The following are string values:
HKCU\SOFTWARE\JKing\X1BC\PanelShortAction
HKCU\SOFTWARE\JKing\X1BC\PanelLongAction
HKCU\SOFTWARE\JKing\X1BC\OKShortAction
HKCU\SOFTWARE\JKing\X1BC\OKLongAction
HKCU\SOFTWARE\JKing\X1BC\LeftShortAction
HKCU\SOFTWARE\JKing\X1BC\LeftLongAction
HKCU\SOFTWARE\JKing\X1BC\RightShortAction
HKCU\SOFTWARE\JKing\X1BC\RightLongAction
HKCU\SOFTWARE\JKing\X1BC\VolumeUpShortAction
HKCU\SOFTWARE\JKing\X1BC\VolumeUpLongAction
HKCU\SOFTWARE\JKing\X1BC\VolumeDownShortAction
HKCU\SOFTWARE\JKing\X1BC\VolumeDownLongAction
HKCU\SOFTWARE\JKing\X1BC\LWINShortAction
HKCU\SOFTWARE\JKing\X1BC\LWINLongAction
HKCU\SOFTWARE\JKing\X1BC\HalfCamShortAction
HKCU\SOFTWARE\JKing\X1BC\HalfCamLongAction
HKCU\SOFTWARE\JKing\X1BC\FullCamShortAction
HKCU\SOFTWARE\JKing\X1BC\FullCamLongAction
HKCU\SOFTWARE\JKing\X1BC\Fn_A_Action
HKCU\SOFTWARE\JKing\X1BC\Fn_S_Action
HKCU\SOFTWARE\JKing\X1BC\Fn_D_Action
HKCU\SOFTWARE\JKing\X1BC\Fn_F_Action
HKCU\SOFTWARE\JKing\X1BC\Fn_G_Action
HKCU\SOFTWARE\JKing\X1BC\Fn_Z_Action
HKCU\SOFTWARE\JKing\X1BC\Fn_X_Action
HKCU\SOFTWARE\JKing\X1BC\Fn_C_Action
HKCU\SOFTWARE\JKing\X1BC\Fn_V_Action
Each action key can be one of three types: Execution of a file, sending of a character, or sending of a special key.
To execute a file, the string should contain the full pathname of the file to run. This can be an exe, mscr, lnk, mp3, doc, whatever. Enclose the path and file name in quotes, followed by a space, then any parameters if you desire if it is an executable. For instance:
Code:
"\Program Files\App\My App.exe" -p
To send a character, the string must begin with a # symbol followed by the character to send. For instance, to send a "$" character, they value of the string should be:
Code:
#$
To send a special key, the string must begin with a & symbol followed by the identifier of the special key to send. Here are the special keys:
W - Windows key
R - Rotate screen
Q - Send left softkey event
E - Send right softkey event
What other special keys would you like?
For instance, to send a windows key event, they value of the string should be:
Code:
&W
The following are DWORD values:
HKCU\SOFTWARE\JKing\X1BC\LongKeyTimeout
Delay for long key press in milliseconds. The default if the value does not exists is 500.
HKCU\SOFTWARE\JKing\X1BC\LWINCtrlMode
Here are the possible choices:
0 - Do not use as ctrl
1 - Short press mode (short press to enable ctrl then press a letter)
2 - Long press mode (press letter while holding ctrl)
HKCU\SOFTWARE\JKing\X1BC\TabCtrlMode
Here are the possible choices:
0 - Do not use as ctrl
1 - Short press mode (short press to enable ctrl then press a letter; long press sends tab chr)
2 - Long press mode (press letter while holding ctrl; short press sends tab chr)
(Note, you may use either LWIN or TAB for ctrl. Not both at the same time. If both of these keys are non zero, the tab key will be used. I recommend the tab key. It is more reliable.)
HKCU\SOFTWARE\JKing\X1BC\SupportMultipleKeyHooks
Here are the possible choices:
0 - OFF
1 - ON
The default if the value does not exists is 0. (Please leave as 0 for now. It does not work.)
HKCU\SOFTWARE\JKing\X1BC\HoldFeedbackDuration
Duration of vibration feedback for a long key press. Set to zero to disable. The default if the value does not exists is 35.
HKCU\SOFTWARE\JKing\X1BC\LandscapeOrientation
Set which landscape orientation the "R" special key will switch to. Choices:
0 - Left handed (correct orientation for the keyboard)
1 - Right handed
The default if the value does not exists is 0.
Known Issues:
-Does not support multiple key hooks (not really a problem as this is an OS limitation but see this post for details)
-LWIN long ctrl mode does not work
Changelog:
v1.1 [2/12/09]
-Added special key (&R) for screen rotation
-Added special keys (&Q and &E) for left and right softkeys
-Fixed bug that cause crash if Fn key was assigned to non existent file
-Will now prevent camera app from opening if you reassign camera button
-Changed format of reg settings for camera button
v1.0 [2/11/09]
-Improved WIN ctrl key support
-Added tab key short and long ctrl modes and registry setting
-Added key hold vibration feedback and registry duration setting
-Added capability to capture fn keys. Registry settings added
-Added capability to send character strokes and special keys
-Added capability to capture half and full camera button press. Registry settings added
-Changed default registry values to reflect correct installation directory for other languages
v0.4 [1/10/09]
-Fixed bug that caused extra long key press in one circumstance
-Fixed bug that caused crash during startup if registry strings were not formatted correctly
-Added option and registry value to change long press timeout
-Added short ctrl key feature and registry option for feature
-Added option to allow other key hooks (doesnt yet actually work)
-Now released in CAB format; CAB presets all reg values and creates shortcuts in startup and start menu
-X1BC now ignores keys by default if reg values do not exist, rather than capturing by default
v0.3 [1/07/09]
-Added registry keys for key actions
-Program now performs key actions from settings
v0.2 [1/06/09]
-Simplified reg settings
-Removed all but "exiting" popup during startup and shutdown
-Rewrote key hook algorithm for better reliability
-Unwanted keys now released to system as set by preferences
Todo List:
-Support multiple key hooks
Downloads below. Please note, the cabs will overwrite existing registry settings. If you want to upgrade from previous version, back up the settings first or just replace the exe. The cabs also place a shortcut in startup and in the start menu.
nice!
would look forward for the program when it's officially released
Heh, nice one Jking. I think the best way to go is to somehow "merge" your app with Dande's. Dande doesn't want to create a UI and uses mortscript, where you use the - in my opinion easier - registry. From what I see so far, you both have the same app, written in a different way, with the biggest change being you using the winkey (which I like), and Dande using the tab key.
I'd like to see where this goes, keep up the good work!
All the Best JKingDev, sorry I can't help. I don't know programming.
The biggest shortcoming of the X1 is the lack of buttons for mapping to apps and task manager. I miss the ease of button mapping on my previous i780.
Looking forward to your end product!
Good idea. Looking forward to this app.
cheers
I would love to see an option that would allow these button's to be exposed in the list of assignable buttons in the Buttons Settings control panel (similar to how Tilt developers were able to add the PTT button to it) to allow regular action assignments to those buttons.
Very interested to see how this application turns out!
millercentral said:
I would love to see an option that would allow these button's to be exposed in the list of assignable buttons in the Buttons Settings control panel (similar to how Tilt developers were able to add the PTT button to it) to allow regular action assignments to those buttons.
Click to expand...
Click to collapse
Yeah, me too! But I guess this is on driver level, not sure though!
Edit: I take that back, I remember that AEButtonPlus is able to add virtual keys to that list. But I think you still have to run your application at all time in the background, not really giving an advantage to this. I might be wrong again though.
@JKingDev
I was sending you my code. Didn't expect you to be this impatient
From what I have experienced, using the keyboard hook, it is not possible to remap the panel and the symbol button. Usually you can stop their original functionality to work by returning -1 in the hook, but that doesn't work with panel and symbol. So, at least at first sight, it seems to be not possible to remap these buttons.
You could consider also using RegisterHotKey, which is officially supported by the SDK. Mort told me that he uses it with MortPlayer and it seems to be quite powerful too. Maybe the hook and RegisterHotKey together allow you to do more than just with the hook. I thought that, when you can't do it with the low level hook, there is no other way at all to do it, that's why I didn't even bother trying.
Since you already started a thread in the development phase, maybe you should tell us what you actually plan to implement so that people can tell you in advance what they like about your concept and what they don't. Kind of collecting requirements before coding - like software engineering should be (and not like I did it )
Edit: By the way, in the zip file I sent to you by mail, you can also find a text file which documents the button sequences I was interested in. Helped me a lot while implementing.
Angelusz said:
Dande doesn't want to create a UI and uses mortscript, where you use the - in my opinion easier - registry.
Click to expand...
Click to collapse
First of all, the registry is only some kind of global application configuration database (and a bad idea from microsoft if you ask me). The registry can only enable functionality that is implemented in an application. In contrary to that, MortScript allows you to implement functionality that my application doesn't.
Despite of being completely different things, I don't find fiddling in the registry easy nor secure, but that's another topic.
Ah, and no offense intended, alright
@Jking:
THANKS for this great idea !!
X1 is missing a dedicated REC key
I desperately need this function
One-touch key press to automatically start recording a voice note
Maybe your software will finally let me use my Xperia as a voice recorder
Thank you for all the support! I am glad there is interest in this. It is nice to give back to this great community. New test version. I rewrote the key hook algorithm to handle the win and softkeys in a smoother way. Shouldnt have any prolems now. Now, if you put in settings to not capture a it should be released to the system like normal. Also changed up the registry settings a little bit to streamline the code. Made note of the new format in the second post. Next step will be to actually perform user specified actions when keys are pressed. It will actually become useful.
For some reason, when I set the grab volume key settings to 0 and completely ignore them, they still dont do anything while X1BC.exe is running. I am not sure if this is my app doing this or AEBP screwing with me since I still have it installed. Does anyone else get this problem?
millercentral said:
I would love to see an option that would allow these button's to be exposed in the list of assignable buttons in the Buttons Settings control panel (similar to how Tilt developers were able to add the PTT button to it) to allow regular action assignments to those buttons.
Very interested to see how this application turns out!
Click to expand...
Click to collapse
I believe this can be done since AEBP does it but I am not sure how. I have a slight idea of what I think it does. It involves adding some registry keys then sending custom key codes. I will look into this after I have accomplished everything else I want with this app. Can't make any promises but I will try.
Dandie said:
Yeah, me too! But I guess this is on driver level, not sure though!
Edit: I take that back, I remember that AEButtonPlus is able to add virtual keys to that list. But I think you still have to run your application at all time in the background, not really giving an advantage to this. I might be wrong again though.
Click to expand...
Click to collapse
Yes I think you are correct on this. The only advantage is assigning special keys like <rotate screen> ect. Most of those things you can find exe's for or use a mortscript anyway though, and my app will allow you to specify any exe/mortscript/file to run/open anyway.
Dandie said:
@JKingDev
I was sending you my code. Didn't expect you to be this impatient
From what I have experienced, using the keyboard hook, it is not possible to remap the panel and the symbol button. Usually you can stop their original functionality to work by returning -1 in the hook, but that doesn't work with panel and symbol. So, at least at first sight, it seems to be not possible to remap these buttons.
You could consider also using RegisterHotKey, which is officially supported by the SDK. Mort told me that he uses it with MortPlayer and it seems to be quite powerful too. Maybe the hook and RegisterHotKey together allow you to do more than just with the hook. I thought that, when you can't do it with the low level hook, there is no other way at all to do it, that's why I didn't even bother trying.
Since you already started a thread in the development phase, maybe you should tell us what you actually plan to implement so that people can tell you in advance what they like about your concept and what they don't. Kind of collecting requirements before coding - like software engineering should be (and not like I did it )
Edit: By the way, in the zip file I sent to you by mail, you can also find a text file which documents the button sequences I was interested in. Helped me a lot while implementing.
Click to expand...
Click to collapse
Sorry for my impatience. I had lots of free time and was itching to put my coding skills to work. I have wanted to write a button mapper since I owned a mogul (on my 6700 i used pqzII to make the win key a ctrl mey; i missed this functionality) but I never got around to it.
About the panel key, a key hook is able to detect the panel key presses, but for some reason it is unable to prevent the system from detecting it too like it can for other keys. This is why the work around to delete the panel manager registry key is necessary. Once you do that, the system ignores the key. Hotkeys sounds like a good idea. As it is, it works for me. I can try hotkey later though to see if that works out better. Deleting the panel manager key is an easy work around though if you dont use panels.
Well as far as key functions, you will specify via registry key what file/program to open/run. It could be and exe, mortscript, mp3, whatever. I think that allows max flexibility. Run a program directly, or run a mortscript if you have something more complex you want the key to do. The same functionality as yours, the only difference is that this can also run an exe directly as opposed to writing a script to run the exe.
After that, I want to implement the win key as a ctrl ley. There will be four modes. 1.) Disable ctrl key: allow the ctrl key to be assigned for short and long presses like it is now. 2.) Short ctrl key: Short press + letter sends ctrl key while a long press is mappable like it is now. 3.) Hold ctrl key: Hold + press letter then release sends ctrl key, while short press is assignable to something else. 4.) Full ctrl key: both short and hold methods send ctrl key.
Next I will add FN+key combinations to be assignable the way the other keys are (run exe/script/open file).
After that it will be looking into the suggestions of others such as virtual app keys.
Dandie said:
First of all, the registry is only some kind of global application configuration database (and a bad idea from microsoft if you ask me). The registry can only enable functionality that is implemented in an application. In contrary to that, MortScript allows you to implement functionality that my application doesn't.
Despite of being completely different things, I don't find fiddling in the registry easy nor secure, but that's another topic.
Ah, and no offense intended, alright
Click to expand...
Click to collapse
The purpose of using the registry is not really to make things easier, it is just to make things configurable. You may choose what keys to trap and turn the ctrl key on or off. Mortscripts are very powerful and easy and I still give you the option of using them. But if all you want the key to do is launch a program, why launch a script just just launches a program? I give you the option to just launch that program directly.
New version 0.3. Now the keys are fully functional. The program is actually useful now. The registry keys to set for the key actions are detailed in the second post. All fully functional. I have stopped using AEButton plus now as X1BC does everything AEBP was doing. No more AEBP splash on boot. Now on to what AEBP doesnt do, ctrl key, fn keys, ect.
One caveat though. I figured out what the problem was with the volume keys. I use the HTC Blackstone volume control. It seems certain that HTC volume control as well as you tube, radio, ect use key hooks. Even if I tell my program to ignore the volume keys, pressing volume up will bring up the volume control but after that the volume keys wont change it. The reason why is that once HTC volume control pops up it sets a key hook to control the keys. If my app already has a key hook set, HTC VC will be unable to install its own hook, thus cannot grab the keys. I proved that HTC VC uses a key hook by closing X1BC, launching the VC, then trying to launch X1BC. My app reported as expected that it could not install the hook.
I noticed something very interesting a while ago though. I can launch X1BC even while AEBP is running and it will work. I didnt think much of it but now I realize that this is important. HTC VC works fine even if AEBP is running. AEBP certainly uses a key hook. I can launch AEBP first then launch X1BC. If I first launch X1BC then launch AEBP, AEBP wont work. I think this means that AEBP has some mechanism of supporting a second key hook. Probably the same way hookmgr works. I will try installing that and seeing if it makes the HTC programs and X1BC work together peacefully. Ultimately though, I want to give X1BC the capability to support another program setting a key hook. Not a big deal though. The HTC programs still work. Pressing a volume key brings up the volume control then you can control with your finger.
It is fully functional for mapping the hard keys now! Try it!
@JKingDev
I would still like to know what exactly you plan to build as the application, I mean featurewise. What features and maybe layout do you want the final application to have? It does really make sense to gather feature requests before starting the development of a complex software, otherwise people will always tell you what they would like to have changed. I think you would save quite a lot of implementation effort that way and you also could arrange your architecture a bit to the "final" structure of the application.
Dandie said:
First of all, the registry is only some kind of global application configuration database (and a bad idea from microsoft if you ask me). The registry can only enable functionality that is implemented in an application. In contrary to that, MortScript allows you to implement functionality that my application doesn't.
Despite of being completely different things, I don't find fiddling in the registry easy nor secure, but that's another topic.
Ah, and no offense intended, alright
Click to expand...
Click to collapse
None taken. I'm just trying to add some perspective here. This is a developers site - true. So you can expect some people to be able to work with mortscript - true. But, regardless of any other arguments, there's a lot of users who just don't grasp scripting like with mort's and/or cba to learn yet another language. It's really good to support mortscript, all I'm saying it's nice to have the "easier" and simpler options as well. I will probably get into mortscript soon, too - as soon as university loosens up.
Now, on this application itself - it's looking really good Jking, it would be lovely to have it support multiple keyhooks. Another feature I'd like to see is grasping software keys, like for instance when tapping the clock in TF3D. I'd like to be able to set what that does as well; e.g. remap it to an application or something. Same goes for calender etc. - is your current code able to support that too?
Keep up the great work, this one is starting to look like a keeper!!
(Although I like AEbuttonplus, I read/noticed some downsides about it and would rather replace it.)
Dandie said:
@JKingDev
I would still like to know what exactly you plan to build as the application, I mean featurewise. What features and maybe layout do you want the final application to have? It does really make sense to gather feature requests before starting the development of a complex software, otherwise people will always tell you what they would like to have changed. I think you would save quite a lot of implementation effort that way and you also could arrange your architecture a bit to the "final" structure of the application.
Click to expand...
Click to collapse
Dandie, I am not sure quite what you mean by this. I outlined all the features I plan to implement. The application is in its final structure, I am just still adding features. What more details did you want to know?
Angelusz said:
Now, on this application itself - it's looking really good Jking, it would be lovely to have it support multiple keyhooks. Another feature I'd like to see is grasping software keys, like for instance when tapping the clock in TF3D. I'd like to be able to set what that does as well; e.g. remap it to an application or something. Same goes for calender etc. - is your current code able to support that too?
Keep up the great work, this one is starting to look like a keeper!!
(Although I like AEbuttonplus, I read/noticed some downsides about it and would rather replace it.)
Click to expand...
Click to collapse
Thanks Angelusz. I don't believe that capturing things like tapping the clock in TF3D is possible though. Tapping software buttons does not generate a keyboard event. Only actual keys do. Therefore unless TF3D sends key events for some reason this would not be possible.
JKingDev said:
Dandie, I am not sure quite what you mean by this. I outlined all the features I plan to implement. The application is in its final structure, I am just still adding features. What more details did you want to know?
Click to expand...
Click to collapse
Oh, then I must have overlooked something. What configuration possibilities do you want to offer in your UI, what do you want to offer via registry configuration and what must be done via scripts or additional programs. E.g. what do you want to implement what a powerful program like AEButtonsPlus offers, what do you don't want to offer and what do you want to add to it to make it better. Starting a discussion like this would pop up many good ideas for a somewhat perfect application, you will see.
By the way, a software never is final - unless you declare it final, which basically means you stop the development.
JKingDev said:
Dandie, I am not sure quite what you mean by this. I outlined all the features I plan to implement. The application is in its final structure, I am just still adding features. What more details did you want to know?
Thanks Angelusz. I don't believe that capturing things like tapping the clock in TF3D is possible though. Tapping software buttons does not generate a keyboard event. Only actual keys do. Therefore unless TF3D sends key events for some reason this would not be possible.
Click to expand...
Click to collapse
I think you're right, I have however found a tool that allows me to remap the paths! http://forum.xda-developers.com/showthread.php?t=407777
Dandie said:
Oh, then I must have overlooked something. What configuration possibilities do you want to offer in your UI, what do you want to offer via registry configuration and what must be done via scripts or additional programs. E.g. what do you want to implement what a powerful program like AEButtonsPlus offers, what do you don't want to offer and what do you want to add to it to make it better. Starting a discussion like this would pop up many good ideas for a somewhat perfect application, you will see.
By the way, a software never is final - unless you declare it final, which basically means you stop the development.
Click to expand...
Click to collapse
Well I wasnt planning on making a UI unless people absolutely want to. All my settings are easily changeable in the registry. The second post outlines all the available options. When I add the ctrl key and fn keys there will be options for these too. There will also be an option to allow other key hooks if I get that working. Nothing must be done via scripts or other programs. Simply enter in the registry what file to run or open when the key is pressed. Everyone is free to make requests. There is one request to emulate virtual hard keys and I will try addressing that later. I am not trying to match AEBP. I did this a.) becausse AEBP is a bloated all purpose app; mine is tailor made for the X1, and much smaller and lighter; b.) AEBP costs money; c.) AEBP cannot create a ctrl key or grab FN keys; AEKM does, meaning purchasing another application. If there is something more you would like to see the app do let me know. Otherwise, I have laid out everything that is in the plan already.
Angelusz said:
I think you're right, I have however found a tool that allows me to remap the paths! http://forum.xda-developers.com/showthread.php?t=407777
Click to expand...
Click to collapse
Glad you got that worked out. I thought there would be something of this nature.
Hi JKingDev,
I have tired X1BC for only one button so far (long press ok button to switch to 2nd today). So far everything is working quite nicely.
With AEBP I was facing a significant battery capacity drainage this was for me the main reason to look out for another button mapper. At least in my configuration I was able to reproduce this battery problem (I had 3 buttons asigned with a double click function and the action menue). But this is reported allready (Touch HD forum, because it happens on the Touch HD as well). It is realy a pity, because AEBP is a great application and was the very 1st I was installing on a WM phone.
As long as there is no UI maybe you could do a presetting of all those reg key with a samll cab file? And fill the dword with "0" - I understand that than the key has just its standard behaviour.
Because than I just have to type "only" my individual settings (I am lazy - I know).
For making program starting easier I have the idea to create in the reg keys a path name to a standard link such as
"\Program Files\X1BC\OKLongAction.lnk"
Than I create a new link for the program I want to start, rename it to "OKLongAction.lnk" and overwrite with this new link the one in the standard directory.
This would allow to make changes without playing arround in the regestry all the time.
Best regards & Many thanks for this great tool!
dingolino
Registry settings:
The following are DWORD values:
HKCU\SOFTWARE\JKing\X1BC\CapturePanel
HKCU\SOFTWARE\JKing\X1BC\CaptureOK
HKCU\SOFTWARE\JKing\X1BC\CaptureLeft
HKCU\SOFTWARE\JKing\X1BC\CaptureRight
HKCU\SOFTWARE\JKing\X1BC\CaptureVolumeUp
HKCU\SOFTWARE\JKing\X1BC\CaptureVolumeDown
HKCU\SOFTWARE\JKing\X1BC\CaptureLWIN
Here are the possible choices:
0 - Leave the key alone
1 - Capture long press only
3 - Capture long and short press
The following are string values:
HKCU\SOFTWARE\JKing\X1BC\PanelShortAction
HKCU\SOFTWARE\JKing\X1BC\PanelLongAction
HKCU\SOFTWARE\JKing\X1BC\OKShortAction
HKCU\SOFTWARE\JKing\X1BC\OKLongAction
HKCU\SOFTWARE\JKing\X1BC\LeftShortAction
HKCU\SOFTWARE\JKing\X1BC\LeftLongAction
HKCU\SOFTWARE\JKing\X1BC\RightShortAction
HKCU\SOFTWARE\JKing\X1BC\RightLongAction
HKCU\SOFTWARE\JKing\X1BC\VolumeUpShortAction
HKCU\SOFTWARE\JKing\X1BC\VolumeUpLongAction
HKCU\SOFTWARE\JKing\X1BC\VolumeDownShortAction
HKCU\SOFTWARE\JKing\X1BC\VolumeDownLongAction
HKCU\SOFTWARE\JKing\X1BC\LWINShortAction
HKCU\SOFTWARE\JKing\X1BC\LWINLongAction
A brief 'how to' about finding which registry keys control simple settings.
(There are other methods and software, but the principal of save file, make changes, compare to file is common throughout)
HKCR - Hot Key Classes Root - not really sure, never really looked though, i always ignore it.
HKCU - Hot Key Current User - Holds short term info and user settings for the most part. Expect lots of changes found when you search this branch.
HKLM - Hot Key Local machine - Generally hard system settings, pretty static.
Get 'ceregeditor' and install it,
connect the phone to usb and allow it to connect to activesync,
in ceregeditor click connection - connect, jump to tools - unlock registry
(skip this step unless you get an error pops up later saying you cant make changes)
Now, down the left you see your registry main keys in a standard tree layout, HKCR, HKCU, HKLM
and on the right, the keys and values within the selected branch when you select on the left.
So, you want to find out which registry key controls, for example, phone keypad tones, long, short, off.
Select HKCU on the left, right click and choose export - and save it as something, HKCU would be the obvious choice, it doesn't matter.
Do the same for HKLM.
It will save all the sub keys of wehatever you select on the left.
you can select to start from sub keys by selecting the appropriate key in the left column, assuming you know which part of the registry you want to search.
most hardware settings are held in HKLM, with things like user preffs found in HKCU, but be warned HKCU changes frequently, so expect a long list of changes when you run a registry compare.)
Once you have saved the files (in all honesty, i dont create them both, usually i check HKLM first, and if i dont find what im looking for only then do i check HKCU)
make your change on your phone
(set phonepad keytones to off, for instance) then back in ceregeditor, right click the selected registry key and choose reload selected.
This makes sure ceregeditor is now aware of the new registry value from the phone.
Now go to compare - compare registry.
It will ask you for a file, point it to the one you just saved, and let it run, , ,it will tell you what keys have changed.
You may occasionally get unconnected changes thrown up, but use a little common sense and you can usually tell what is usefull and what isnt.
In the results window, down the left are the items that have changed, with details of the change on the right.
In our example with the keytones, (not a great example since the target is in the HKCU and so is lost among lots of other changes) you should be able to figure out that the keytone settings are held in
HKEY_CURRENT_USER\ControlPanel\Sounds\Keypress beepmode
Its usually fairly obvious which is the key you are after amid the noise of random system state changes.
When you find your target, put a tick in the box and hit export. You can now save that key (or keys if there are several changes you want to save)
Save it as .cereg and you will be able to simply run that file on your phone to apply those settings.
Or, with wincecabmanager (my other recommended piece of software alongside ceregeditor) its easy to import the reg file into a cab. You can keep adding to that cab as you find and extract more personalised settings.
Keep it in your autoinstall folder on your sd card, and it will always be applied when you hard reset.
My own 'my tweaks.cab' file is fat with various settings, tweaks, etc and i still add to it regularly.
It's true that it's often easier to trawl <searchengine></searchengine> and find the answer, and maybe even a cab to turn it on and off, but its a nice way to start p0king at your registry and seeing how things work, plus you can make one cab for yourself, adding tweaks one by one, without remembering to store loads of different ones and re apply them when you restore/hard reset.
you know, i've never thought of exporting the whole hkcu or hklm directory before. i'm going to have to try that. it'll be interesting to read through a lot of that.
I too have a registry tweak CAB for both my Wizard & Rhodium. Haven't made one for the HD2 yet, since most of the tweaks I've made were through one of the many different tweaking apps.
also, what's this about an autoinstall folder?
*edit* disregard the last part. I always use official roms so the autoinstall doesn't apply