meme1215 thanks for sharing this!
I've encountered with an error while trying to set a shortcut, but after several error screens it seems to save the shortcut key temporally because when PSPad is restarted I have to set it again.
Exception description:
Cannot open file "Z:\PSpad\KeyMap.INI". Path not found.
Exception class: EFOpenError
Exception address: 00423896
----------------------------------------------------------------------------------------------------
Stack list, generated 4/2/2014 4:18:31 PM
[00423891] Classes.TFileStream.Create + $109
[0040457F] System.@ClassCreate + $7
[00423764] Classes.TFileStream.Create + $20
[0042234E] Classes.TStrings.LoadFromFile + $12
[006BD317] uParams.TPSPadParam.WriteKeyMap (Line 2649, "uParams.pas" + 23) + $8
[0063A869] uSettings.TfSettings.bOKClick (Line 894, "uSettings.pas" + 293) + $16
[0042A16B] Classes.TBasicAction.Execute + $F
[00483051] ActnList.TContainedAction.Execute + $31
[00483CF3] ActnList.TCustomAction.Execute + $4F
[0042A03F] Classes.TBasicActionLink.Execute + $13
[004A0571] Controls.TControl.Click (Line 4703, "Controls.pas" + 7) + $7
[0047E098] StdCtrls.TButton.Click (Line 3472, "StdCtrls.pas" + 3) + $2
[0047E1A4] StdCtrls.TButton.CNCommand (Line 3526, "StdCtrls.pas" + 1) + $B
[004A03F0] Controls.TControl.WndProc (Line 4645, "Controls.pas" + 53) + $6
[004A3533] Controls.TWinControl.DefaultHandler (Line 6369, "Controls.pas" + 23) + $17
[004A03F0] Controls.TControl.WndProc (Line 4645, "Controls.pas" + 53) + $6
[004A344F] Controls.TWinControl.WndProc (Line 6342, "Controls.pas" + 33) + $4
[0047DF5C] StdCtrls.TButtonControl.WndProc (Line 3414, "StdCtrls.pas" + 13) + $4
[004A01C0] Controls.TControl.Perform (Line 4552, "Controls.pas" + 5) + $C
[004A3587] Controls.DoControlMsg (Line 6388, "Controls.pas" + 6) + $11
[004A3BDF] Controls.TWinControl.WMCommand (Line 6574, "Controls.pas" + 1) + $5
[004A03F0] Controls.TControl.WndProc (Line 4645, "Controls.pas" + 53) + $6
[00420D08] Classes.TThreadList.UnlockList + $4
[00432AC8] Graphics.FreeMemoryContexts + $98
[004A30CC] Controls.TWinControl.MainWndProc (Line 6237, "Controls.pas" + 3) + $6
[004A30E1] Controls.TWinControl.MainWndProc (Line 6240, "Controls.pas" + 6) + $0
[0042AE20] Classes.StdWndProc + $14
[004A344F] Controls.TWinControl.WndProc (Line 6342, "Controls.pas" + 33) + $4
[00420D08] Classes.TThreadList.UnlockList + $4
[00432AC8] Graphics.FreeMemoryContexts + $98
[004A30CC] Controls.TWinControl.MainWndProc (Line 6237, "Controls.pas" + 3) + $6
[0042AE20] Classes.StdWndProc + $14
[004A3533] Controls.TWinControl.DefaultHandler (Line 6369, "Controls.pas" + 23) + $17
[004A4BA0] Controls.TWinControl.WMNCHitTest (Line 7212, "Controls.pas" + 5) + $4
[004A03F0] Controls.TControl.WndProc (Line 4645, "Controls.pas" + 53) + $6
[00513283] SynEdit.GetMsgProc (Line 11182, "SynEdit.pas" + 27) + $C
[0049BE22] Controls.FindControl (Line 1805, "Controls.pas" + 6) + $9
[00513283] SynEdit.GetMsgProc (Line 11182, "SynEdit.pas" + 27) + $C
[004A3533] Controls.TWinControl.DefaultHandler (Line 6369, "Controls.pas" + 23) + $17
[004A0990] Controls.TControl.WMLButtonUp (Line 4836, "Controls.pas" + 1) + $6
[004A03F0] Controls.TControl.WndProc (Line 4645, "Controls.pas" + 53) + $6
[004A3277] Controls.TWinControl.IsControlMouseMsg (Line 6287, "Controls.pas" + 1) + $9
[004A344F] Controls.TWinControl.WndProc (Line 6342, "Controls.pas" + 33) + $4
[0047DF5C] StdCtrls.TButtonControl.WndProc (Line 3414, "StdCtrls.pas" + 13) + $4
[004A30CC] Controls.TWinControl.MainWndProc (Line 6237, "Controls.pas" + 3) + $6
[0042AE20] Classes.StdWndProc + $14
[004907A5] Forms.TApplication.StopHintTimer + $15
[004A591D] Controls.TWinControl.GetHandle (Line 7802, "Controls.pas" + 1) + $2
[004907A5] Forms.TApplication.StopHintTimer + $15
[0048FADF] Forms.TApplication.ProcessMessage + $83
[0048FB16] Forms.TApplication.HandleMessage + $A
[0048C589] Forms.TCustomForm.ShowModal + $15D
[006D1204] uMain.TfPSPad.aRegistrExecute (Line 6215, "uMain.pas" + 6) + $9
[006DE188] uMain.TfPSPad.ActionListExecute (Line 10854, "uMain.pas" + 8) + $7
[004833EC] ActnList.TCustomActionList.ExecuteAction + $14
[00483034] ActnList.TContainedAction.Execute + $14
[00483CF3] ActnList.TCustomAction.Execute + $4F
[0042A03F] Classes.TBasicActionLink.Execute + $13
[00496ACF] Menus.TMenuItem.Click + $8F
[00497CBF] Menus.TMenu.DispatchCommand + $13
[0048B347] Forms.TCustomForm.WMCommand + $1F
[004A03F0] Controls.TControl.WndProc (Line 4645, "Controls.pas" + 53) + $6
[00513283] SynEdit.GetMsgProc (Line 11182, "SynEdit.pas" + 27) + $C
[0049BE22] Controls.FindControl (Line 1805, "Controls.pas" + 6) + $9
[00513283] SynEdit.GetMsgProc (Line 11182, "SynEdit.pas" + 27) + $C
[004A344F] Controls.TWinControl.WndProc (Line 6342, "Controls.pas" + 33) + $4
[004893AD] Forms.TCustomForm.WndProc + $421
[00420D08] Classes.TThreadList.UnlockList + $4
[004F8121] TntControls.TWinControlTrap.WindowProc (Line 666, "TntControls.pas" + 19) + $5
[004A30CC] Controls.TWinControl.MainWndProc (Line 6237, "Controls.pas" + 3) + $6
[0042AE20] Classes.StdWndProc + $14
[004F7D7C] TntControls.TWinControlTrap.Win32Proc (Line 554, "TntControls.pas" + 12) + $19
[0042AE20] Classes.StdWndProc + $14
[004F95FD] TntForms.TTntForm.DefaultHandler (Line 385, "TntForms.pas" + 7) + $1A
[004A591D] Controls.TWinControl.GetHandle (Line 7802, "Controls.pas" + 1) + $2
[004F95FD] TntForms.TTntForm.DefaultHandler (Line 385, "TntForms.pas" + 7) + $1A
[004A4009] Controls.TWinControl.WMSetCursor (Line 6737, "Controls.pas" + 37) + $6
[004A03F0] Controls.TControl.WndProc (Line 4645, "Controls.pas" + 53) + $6
[00420D08] Classes.TThreadList.UnlockList + $4
[00432AC8] Graphics.FreeMemoryContexts + $98
[004A30CC] Controls.TWinControl.MainWndProc (Line 6237, "Controls.pas" + 3) + $6
[004A30E1] Controls.TWinControl.MainWndProc (Line 6240, "Controls.pas" + 6) + $0
[004FA0F8] TntForms.GetMessageForNT (Line 777, "TntForms.pas" + 10) + $9
[004A344F] Controls.TWinControl.WndProc (Line 6342, "Controls.pas" + 33) + $4
[00420D08] Classes.TThreadList.UnlockList + $4
[00432AC8] Graphics.FreeMemoryContexts + $98
[004A30CC] Controls.TWinControl.MainWndProc (Line 6237, "Controls.pas" + 3) + $6
[0042AE20] Classes.StdWndProc + $14
[004F7D7C] TntControls.TWinControlTrap.Win32Proc (Line 554, "TntControls.pas" + 12) + $19
[0042AE20] Classes.StdWndProc + $14
[0048F8F3] Forms.TApplication.IsMDIMsg + $3F
[0048FADF] Forms.TApplication.ProcessMessage + $83
[0048FB16] Forms.TApplication.HandleMessage + $A
[0048FD36] Forms.TApplication.Run + $96
[006F2FAD] PSPad.PSPad (Line 69, "" + 43) + $7
----------------------------------------------------------------------------------------------------
Program : C:\Program Files\PSPad editor\PSPad.exe 4.5.6 (2427)
System : Windows XP Professional x32, Version: 5.1, Build: A28, Service Pack 3
Processor: Intel, Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz, 3390 MHz MMX
Display : 2560x1418 pixels, 32 bpp
----------------------------------------------------------------------------------------------------
Active Controls Hierarchy:
TfSettings "fSettings"
----------------------------------------------------------------------------------------------------