-
Posts
434 -
Joined
-
Last visited
-
Days Won
13
Content Type
Profiles
Forums
Events
Everything posted by elGringo
-
wprins! That's very rich answer thank you! So this link https://tools.ietf.org/html/rfc2617 to RFC as I can see? I will need time to read it all. For the moment i found that some programs if they are on the Sending device can read Origin content before it is encrypted in SSL. As for the moment I can see way with tokens - quite good. Maybe its naive but we can encrypt a couple of numbers for example before sending them, numbers will be connected to each other for some law, for ex. n2=(n1+1) or more sophistic way and to decrypt it on server, if pair is in law then accept request.
-
So i checked with HTTPDebugger - another sinffer program. SSL works well when https. No Post / get params visible! Thank you all for discussion - explanation found!
-
Yes! I agree with you - if someone will want to hack he will do that. Just wanted implement some basic things like SSL. I think HTTPAnalyzer injecting to process that's why he gets origin data through HookWinSockVх.dll So SSL works correct, traffic is encrypted. About checks on Server - yes, of course
-
I have idHTTP and idHTTPServer. I send commands like this, for example - sending file from idHTTP procedure TVisualFrame_HTTP.SendOneFile; var PostData: TIdMultiPartFormDataStream; FileName:string; Error:string; ResponseText:string; begin if not IsHTTPConnectionOk(Error,ResponseText) then Exit; if OpenDialog.Execute then FileName:=OpenDialog.FileName; if FileName='' then Exit; PostData := TIdMultiPartFormDataStream.Create; try idHTTP.Request.Referer := HTTPServerToRequest+'/sendfile'; // 'http://localhost:40000/sendfile'; // idHTTP.Request.ContentType := 'multipart/form-data'; // PostData.AddFormField('field1', 'msg1'); PostData.AddFile('attach', FileName, 'application/x-rar-compressed'); // PostData.AddFormField('field2', 'msg2'); // PostData.AddFormField('action', 'post'); idHTTP.Post(HTTPServerToRequest+'/sendfile', PostData); Application.ProcessMessages; finally if(Assigned(PostData)) then PostData.Free; ShowMessage('idHTTP Sent OK'); end; end; And on Server Side I decode it. So if any one will sniff which URI i use to send file - than anyone can upload any file (maybe harmful EXE). In HTTPAnalyzer it is all visible - host, port, post params, so POST request may be repeated! So I just want Server to recognize if this POST request is myne. For the moment i decided to use SSL for the first and Login Password as Params before to check if it is my Request but in HTTPAnalyzer - I can see that all... Maybe other ways to separate my POST requests from other ones?
-
Dear proffessionals! I never used SSL, and I tried today in hope to protect POST Params from sniffers like HTTPAnalyzer. In current version I test with idHTTP and idHTTPServer and in next version i am going to use UniGUI Server, so situation will be similar. So I send POST Request with Params in HTTPAnalyzer I see Is it normal situation for SSL?
-
Oliver, thank you ! So you use mostly Application form?
-
Theme up - nobody knows? Just wanted best practice - or noone knows?
-
For the moment I can understand that difference in calling them To call Application form we should use SomeApplicationForm.Show(); To call FreeForm we should use ... var SomeFreeForm:TSomeFreeForm; begin SomeFreeForm:=TSomeFreeForm.Create(UniApplication); SomeFreeForm.Show(); ... // SomeFreeForm.Free; // << somewhere in the code So - what else different beetwen them? Is ApplicationForm is more modern - with automatical memory management on it? What approach is more reliable from your experience?
-
Tnhx, i just added it from File>New
-
Yes, but this handler (OnBeforeLogin) is empty in logindemo. So, I tested I have Main form and LoginForm TfEncryptLink_LoginForm = class(TUniLoginForm) I start App and i see main Form I set Handled:=true in OnBeforeLogin and it is again MainForm on Start So, how to repeat logindemo? Can't understand)))
-
mohammad thnx! So, how to repeat it? I created simple App with 1 Main form and 1 Login Form - when I started - I saw Main form. Where is Login form - that shoud start automatically ?))) Then I just checked Visible:=false to Main form, and Login form appeared first also can't understand when and how Login Form was Created ? Didn't see anywhere code like Loginform:=TLoginForm.Create in spite of that everywhere function like function fEncryptLink_LoginForm: TfEncryptLink_LoginForm; begin Result := TfEncryptLink_LoginForm(UniMainModule.GetFormInstance(TfEncryptLink_LoginForm)); end; So - how it works in UniGUI - we don't need to create it in memory and Free then? Instances created on Create of Main? Does this approach safe for memory leaks?
-
Can anyone explain, why in login demo there is a TUniLoginForm1 showed first? In which place of code is that? Can't find it!
-
uniGUI Mobile vs FireMonkey - what better for business app ?
elGringo replied to elGringo's topic in uniGUI Mobile
Thanks in advance! Will test it more! -
uniGUI Mobile vs FireMonkey - what better for business app ?
elGringo replied to elGringo's topic in uniGUI Mobile
As for me - a lot of variants - that's good. But without experience - it is complicated to understand what decision is better!!! On the one hand FireMonkey - is powerful framework but what I don't like is -It will not work on all devices, as I understood on Intel Processors. So part of customers will be angry))). -I can't work with MySQL directly from FireDac -need to use DataSnap or some other components My doubts about UniMobile - i didn't work with it at all. How is it in work? How are your customers - are they happy? -half a year ago i tried some Hello World App - but stoped on centering the button - in Delphi code I centered the button but on the fact button wasn't in center - so i thought that moment that UniMobile maybe not ready for production or I am wrong in something. What i like in UniMobile - we have one code - for all devices and platforms, as I understand for correct work we need only -Connection to the Web -Mobile Browser - but which one better? Is any difference? Is jQuery works good with different ones or Google Chrome better for example? -
uniGUI Mobile vs FireMonkey - what better for business app ?
elGringo replied to elGringo's topic in uniGUI Mobile
So, you developed 2 apps. One - clear FireMonkey - another UniMobile wrapped in TWebBrowser? -
uniGUI Mobile vs FireMonkey - what better for business app ?
elGringo replied to elGringo's topic in uniGUI Mobile
I mean some mistakes. For example in fireMonkey i found difference like that on the picture on different devices. On Fire-Monkey.ru forum i found the answer - do not use gradient. So, i just didn't know that... -
uniGUI Mobile vs FireMonkey - what better for business app ?
elGringo replied to elGringo's topic in uniGUI Mobile
Connected always to the Internet -
Dear All! I want to write a little application for Android and iPhone that doesn't need any camera, or hardware or phone book... Only business logic Tested simple apps on FireMonkey on 3 devices - Lenovo S60, Sony Xperia and Samsung DUOS - Result - only on Lenovo S60 it started OK - on other devices it wasn't found in Target Folder in spite of latest SDK... Same test on UniGUI mobile - All is Ok on three devices!!! So, as I know UniGui mobile needs only internet and browser on device and it will start on any device - Android, iPhone, WindowsPhone, etcetra. My question - how good is uniGUI in practice? What invisible stones for UniGUI developer? Please share your experience. Maybe it needs only Google Chrome browser? Also - how it is better to give this app to the customer? As a link or to wrap it to TWebBrowser in FireMonkey app? Strong point of FireMonkey is graphic and Animation - what about it in uniGUI mobile??
-
Ok, my decision is following - Zilav, big thanks to you for help!!! procedure TVisualFrame_PSFTPClient.bTestClick(Sender: TObject); var FFileTimeLocalized:TFileTime; FFileTime:TFileTime; FLocalFileTime:TFileTime; SystemTimeLocalized:TSystemtime; SystemTime:TSystemtime; datetime: TDateTime; IndyString:String; begin IndyString:='20160912210450'; // <<Example datetime := EncodeDateTime(StrToInt(Copy(IndyString, 1, 4)), StrToInt(Copy(IndyString, 5, 2)), StrToInt(Copy(IndyString, 7, 2)), StrToInt(Copy(IndyString, 9, 2)), StrToInt(Copy(IndyString, 11, 2)), StrToInt(Copy(IndyString, 13, 2)), 0); DateTimeToSystemTime(datetime,SystemTime); SystemTimeToFileTime(SystemTime,FFileTime); FileTimeToLocalFileTime(FFileTime,FFileTimeLocalized); FileTimeToSystemTime(FFileTimeLocalized,SystemTimeLocalized); ShowMessage( 'GMT Localized '+ DateTimeToStr( SystemTimeToDateTime( SystemTimeLocalized)) ); ShowMessage( 'GMT 0 (Not Localized) '+ DateTimeToStr(datetime) ); end;
-
Yes)) Thank you, Zilav! I also decided like this, but it is datetime in GMT 0, now i am thinking how to cast it to locale time, for example difference with my windows watches is +5 hours. I almost found decision, will post it here little bit later...
-
Ok, i tried FFileTime.dwLowDateTime:=20160911195120; FFileTime.dwHighDateTime:=20160911195120; for i := 0 to Memo1.Lines.Count-1 do begin FileTimeToLocalFileTime( FFileTime, LTime); FileTimeToSystemTime( LTime, SystemTime ); Memo2.Lines.Add(//'value='+ DateTimeToStr( SystemTimeToDateTime( SystemTime) ) ); end; as a result 11.06.6156 4:33:57 Don't understand how it works for the moment
-
Hi, everyone! I use Indy, and after idFTP.put I want to get info about File Creation DateTime on Server I do like following... ... List; Memo1.Lines.Clear; for i := 0 to IdFTP.ListResult.Count-1 do begin Memo1.Lines.Add(IdFTP.ListResult[i]); end; ... As a result i get info like this size=0;type=cdir;create=20160911195120;modify=20160912135842;windows.lastaccesstime=20160912135842;win32.ea=0x00002010; . size=0;type=pdir;create=20160911195120;modify=20160912135842;windows.lastaccesstime=20160912135842;win32.ea=0x00002010; .. size=0;type=dir;create=20160912102900;modify=20160912102900;windows.lastaccesstime=20160912102900;win32.ea=0x00002010; 2016 size=2360;type=file;create=20160912135842;modify=20160912135842;windows.lastaccesstime=20160912135842;win32.ea=0x00002020; cancel(1).png As I understand this is create=20160911195120; is timestamp in 64 bit Ok, with Regular Expressions I can get only this numbers (20160911195120) but how to convert them to the readable DateTime??? I tried FileDateToDateTime function, but 20160911195120 is not an integer? I meet this situation first time. Who can help? Regards,
-
Yes. It is clear, but looked for alternative variants
-
Or you just meant that they use HTTP Protocol? If so - yes that is strong argument.
-
And idea to divide big files looks very well. Need to try it...