The PODPISKA project :

//--------------------
procedure tloginfo.changedbexec(const sender: TObject);
begin
        if showmodalwidget(tconnsetupfo) = mr_ok then begin // <<<< cancelled 
here
                self.window.modalresult:= mr_cancel;
                application.terminate;  
        end;
end;
//--------------------
procedure tconnsetupfo.created(const sender: TObject);
var
        s: msestring;
begin
        if dmmain.node_version then sfConnIni.filedir:= sfConnIni.filedir + 
'_node';
end;
//--------------------
procedure tconnsetupfo.loaded(const sender: TObject);
begin
        if dmmainmo.conn.tag = 1 then
                exit
        else
        if not checkmd5password4file('admin.psw') then begin
                release;
        end;
end;
//--------------------
function checkmd5password4file(const pswfilename: widestring): boolean;
begin
        result:= checkmd5password(
                pswread(pswfilename),
                @pswencode
        );
end;
//--------------------
function checkmd5password(      
        const psw_digest: TMDDigest;    
        passwordencfunc: passwordencfuncty
): boolean;
var
        fo: tstringenterfo;
        res: modalresultty;
        
begin
repeat
        result:= false;
        application.lock;
        try
                fo:= tstringenterfo.create(nil);
                try
                        with fo do begin
                                caption:= 'ПАРОЛЬ АДМИНИСТРАТОРА ПРОГРАММЫ';
                                lab.caption:= 'Введите пароль:';
                                value.passwordchar:= '*';
                                value.value:= '';
                                res:= fo.show(true,nil);
                                
                                if res = mr_ok then begin
                                        if not 
md5digestcomp(psw_digest,passwordencfunc(value.value)) then
                                                showmessage('Неверный пароль 
!','ОШИБКА')
                                        else
                                                result:= true;
                                end;
                                
                        end;
                finally
                        fo.Free;
                end;
        finally
                application.unlock;
        end;
until result or (res <> mr_ok);
end;

============================

The stack :

#0  0040B416 :0 fpc_raiseexception()
#1  0047F3DA mseguiglob.pas:369 GUIERROR(ERROR=GUE_CANNOTFOCUS,
TEXT=0x56dcd98 'tconnsetupfo connsetupfo')
#2  0047F4F5 mseguiglob.pas:384 GUIERROR(ERROR=GUE_CANNOTFOCUS,
SENDER=0xac968, TEXT=0x56dcd98 'tconnsetupfo connsetupfo')
#3  00422305 msegui.pas:9607 TWIDGET__SETFOCUS(AACTIVATE=true,
this=<error reading variable>)
#4  00427C07 msegui.pas:12121 TWIDGET__ACTIVATE(ABRINGTOFRONT=true,
AFORCE=false, this=<error reading variable>)
#5  00430CDD msegui.pas:16314
TINTERNALAPPLICATION__BEGINMODAL(SENDER=0x3fa20e8, SHOWINFO=0x3b2f8c8,
this=<error reading variable>)
#6  0042A29D msegui.pas:13335 TWINDOW__BEGINMODAL(SHOWINFO=0x3b2f8c8,
this=<error reading variable>)
#7  00423140 msegui.pas:10036
TWIDGET__INTERNALSHOW(MODALLEVEL=ML_APPLICATION,
TRANSIENTFOR=0x3b2f938, WINDOWEVENT=false, NOMODALFORRESET=false,
this=<error reading variable>)
#8  004234BD msegui.pas:10124 TWIDGET__SHOW(MODALLEVEL=ML_APPLICATION,
TRANSIENTFOR=0x0, this=<error reading variable>)
#9  00423500 msegui.pas:10143 TWIDGET__SHOW(MODAL=true,
TRANSIENTFOR=0x0, this=<error reading variable>)
#10  0041392A msegui.pas:3376 SHOWMODALWIDGET(ACLASS=<incomplete type>)
#11  0043E389 loginform.pas:108 TLOGINFO__CHANGEDBEXEC(SENDER=0xc1818,
this=<error reading variable>)
#12  004BBC2D mseact.pas:398 DOACTIONEXECUTE1(SENDER=0xc1818,
INFO={ACTION = 0x0, CAPTIONTEXT = 0x3ffe510
#1044#1088#1091#1075#1072#1103' '#1041#1044'..', CAPTION1 = {TEXT =
0x3ffe540 #1044#1088#1091#1075#1072#1103' '#1041#1044'..', FORMAT =
0x0, FLAGS = []}, STATE = [AS_LOCALCAPTION, AS_LOCALONEXECUTE],
OPTIONS = [], SHORTCUT = 0x0, SHORTCUT1 = 0x0, GROUP = 0, IMAGENR =
-1, IMAGENRDISABLED = -2, COLORGLYPH = 2147483649, COLOR = 2147483649,
IMAGECHECKEDOFFSET = 0, IMAGELIST = 0x0, HINT = 0x0, TAG = 0,
TAGPOINTER = 0x0, ONEXECUTE = 0x43e370 <TLOGINFO__CHANGEDBEXEC>,
ONBEFOREEXECUTE = 0}, CHANGED=false, NOCHECKBOX=false,
NOCANDEFOCUS=true, BEFOREEXECUTE=0)
#13  004BBC8B mseact.pas:414 DOACTIONEXECUTE(SENDER=0xc1818,
INFO={ACTION = 0x0, CAPTIONTEXT = 0x3ffe510
#1044#1088#1091#1075#1072#1103' '#1041#1044'..', CAPTION1 = {TEXT =
0x3ffe540 #1044#1088#1091#1075#1072#1103' '#1041#1044'..', FORMAT =
0x0, FLAGS = []}, STATE = [AS_LOCALCAPTION, AS_LOCALONEXECUTE],
OPTIONS = [], SHORTCUT = 0x0, SHORTCUT1 = 0x0, GROUP = 0, IMAGENR =
-1, IMAGENRDISABLED = -2, COLORGLYPH = 2147483649, COLOR = 2147483649,
IMAGECHECKEDOFFSET = 0, IMAGELIST = 0x0, HINT = 0x0, TAG = 0,
TAGPOINTER = 0x0, ONEXECUTE = 0x43e370 <TLOGINFO__CHANGEDBEXEC>,
ONBEFOREEXECUTE = 0}, NOCHECKBOX=false, NOCANDEFOCUS=true,
BEFOREEXECUTE=0)
#14  004FF279 mseact.pas:0 MSESIMPLEWIDGETS_TCUSTOMBUTTON_$__DOEXECUTE()
#15  004C8B2C msewidgets.pas:2032
TACTIONSIMPLEBUTTON__INTERNALEXECUTE(this=<error reading variable>)
#16  004C8B47 msewidgets.pas:2039
TACTIONSIMPLEBUTTON__DOSHAPEEXECUTE(ATAG=0, INFO={EVENTKIND =
EK_BUTTONRELEASE, SHIFTSTATE = [], POS = {X = 67, Y = 14}, EVENTSTATE
= [ES_CLIENT], TIMESTAMP = 2186056928, BUTTON = MB_LEFT}, this=<error
reading variable>)
#17  004DC293 mseshapes.pas:426 UPDATEMOUSESHAPESTATE(INFO={CA = {DIM
= {X = 0, Y = 0, CX = 90, CY = 23, POS = {X = 0, Y = 0}, SIZE = {CX =
90, CY = 23}}, CAPTION = {TEXT = 0x3ffe540
#1044#1088#1091#1075#1072#1103' '#1041#1044'..', FORMAT = 0x0, FLAGS =
[]}, FONT = 0x1088f0, TEXTFLAGS = [TF_XCENTERED, TF_YCENTERED],
IMAGEPOS = IP_CENTER, CAPTIONDIST = 2, IMAGENR = -1, COLORGLYPH =
2147483649, IMAGELIST = 0x0, IMAGEDIST = 0, IMAGEDISTTOP = 0,
IMAGEDISTBOTTOM = 0, CAPTIONCLIPPED = false}, FOCUSRECTDIST = 1, STATE
= [SHS_SHOWFOCUSRECT..SHS_SHOWDEFAULTRECT], TABPOS = 0, GROUP = 0,
COLOR = 2147483651, COLORACTIVE = 0, IMAGENRDISABLED = -2,
IMAGECHECKEDOFFSET = 0, FACE = 0x0, FRAME = 0x0, MOUSEFRAME = {LEFT =
0, TOP = 0, RIGHT = 0, BOTTOM = 0, TOPLEFT = {CX = 0, CY = 0},
BOTTOMRIGHT = {CX = 0, CY = 0}}, TAG = 0, DOEXECUTE = 0x4c8b30
<TACTIONSIMPLEBUTTON__DOSHAPEEXECUTE>}, MOUSEEVENT={EVENTKIND =
EK_BUTTONRELEASE, SHIFTSTATE = [], POS = {X = 67, Y = 14}, EVENTSTATE
= [ES_CLIENT], TIMESTAMP = 2186056928, BUTTON = MB_LEFT},
WIDGET=0xc1818, AFRAME=0x0, INFOARPO=0x0, CANCLICK=true)
#18  004C8BE3 msewidgets.pas:2053
TACTIONSIMPLEBUTTON__CLIENTMOUSEEVENT(INFO={EVENTKIND =
EK_BUTTONRELEASE, SHIFTSTATE = [], POS = {X = 67, Y = 14}, EVENTSTATE
= [ES_CLIENT], TIMESTAMP = 2186056928, BUTTON = MB_LEFT}, this=<error
reading variable>)
#19  00421847 msegui.pas:9077 DOCLIENTMOUSEEVENT(parentfp=0x3b2fb20)
#20  004216E8 msegui.pas:9213 TWIDGET__MOUSEEVENT(INFO={EVENTKIND =
EK_BUTTONRELEASE, SHIFTSTATE = [], POS = {X = 67, Y = 14}, EVENTSTATE
= [ES_CLIENT], TIMESTAMP = 2186056928, BUTTON = MB_LEFT}, this=<error
reading variable>)
#21  004CF6EB msewidgets.pas:4815
TACTIONWIDGET__MOUSEEVENT(INFO={EVENTKIND = EK_BUTTONRELEASE,
SHIFTSTATE = [], POS = {X = 67, Y = 14}, EVENTSTATE = [ES_CLIENT],
TIMESTAMP = 2186056928, BUTTON = MB_LEFT}, this=<error reading
variable>)
#22  0042AF0C msegui.pas:13597 TWINDOW__DISPATCHMOUSEEVENT(INFO={MOUSE
= {EVENTKIND = EK_BUTTONRELEASE, SHIFTSTATE = [], POS = {X = 67, Y =
14}, EVENTSTATE = [ES_CLIENT], TIMESTAMP = 2186056928, BUTTON =
MB_LEFT}, WHEEL = {EVENTKIND = EK_BUTTONRELEASE, SHIFTSTATE = [], POS
= {X = 67, Y = 14}, EVENTSTATE = [ES_CLIENT], TIMESTAMP = 2186056928,
WHEEL = MW_UP, DELTA = 0}}, CAPTURE=0xc1818, this=<error reading
variable>)
#23  0042E673 msegui.pas:15240
TINTERNALAPPLICATION__PROCESSMOUSEEVENT(EVENT=0x3ffe358, this=<error
reading variable>)
#24  004305C6 msegui.pas:16172
TINTERNALAPPLICATION__EVENTLOOP(ONCE=false, this=<error reading
variable>)
#25  00430D43 msegui.pas:16322
TINTERNALAPPLICATION__BEGINMODAL(SENDER=0x3fa2288, SHOWINFO=0x3b2fef8,
this=<error reading variable>)
#26  0042A29D msegui.pas:13335 TWINDOW__BEGINMODAL(SHOWINFO=0x3b2fef8,
this=<error reading variable>)
#27  00423140 msegui.pas:10036
TWIDGET__INTERNALSHOW(MODALLEVEL=ML_APPLICATION,
TRANSIENTFOR=0x3b2ff68, WINDOWEVENT=false, NOMODALFORRESET=false,
this=<error reading variable>)
#28  004234BD msegui.pas:10124
TWIDGET__SHOW(MODALLEVEL=ML_APPLICATION, TRANSIENTFOR=0x0, this=<error
reading variable>)
#29  00423500 msegui.pas:10143 TWIDGET__SHOW(MODAL=true,
TRANSIENTFOR=0x0, this=<error reading variable>)
#30  0040229E podpiska.pas:29 main()

------------------------------------------------------------------------------
Android is increasing in popularity, but the open development platform that
developers love is also attractive to malware creators. Download this white
paper to learn more about secure code signing practices that can help keep
Android apps secure.
http://pubads.g.doubleclick.net/gampad/clk?id=65839951&iu=/4140/ostg.clktrk
_______________________________________________
mseide-msegui-talk mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mseide-msegui-talk

Reply via email to