Remembering Calculator and Character Map Settings

Here’s an odd little one you might not have noticed.  The Windows Calculator applet remembers whether it was last displayed in “Standard” or “Scientific” view, and whether digit grouping was selected, and restores those settings the next time you use it.  Because this applet dates back to the very early days of Windows, it saves these settings in the win.ini file in the Windows folder.  There are two problems with this:  1) the settings apply to all users of the computer, and 2) you need to be an administrator to write your settings into this file.  Likewise, the Character Map applet remembers the last font and codepage selected, and whether “Advanced view” was checked – but only if the user is an admin.


The odd thing is that Windows NT and its successors have always had a mechanism to redirect .ini file access to the registry.  For some reason, this was never applied to calc.exe or charmap.exe.  But you can fix this.


Warning If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.


· Run regedit.exe as an administrator

· Browse to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\win.ini

· To “fix” Calculator, create a new String value called SciCalc.  Set the data for this string value to

· To “fix” Character Map, create a new String value called MSUCE.  Set the data for this string value to:

· Reboot the computer.  (Rebooting is required only if you have used Calculator or CharMap since the previous reboot.)


This will cause the applications’ settings to be written to the registry under HKEY_CURRENT_USER\Software\Microsoft\SciCalc and HKEY_CURRENT_USER\Software\Microsoft\CharMap, respectively.  The application settings are now per-user, and admin is no longer required to save settings!


Thanks to Michael Entin for the CharMap fix.