-
Content Count
1977 -
Joined
-
Last visited
-
Days Won
26
Everything posted by Attila Kovacs
-
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
There is however this message on bind: "Image does not contain a debug directory address - please link with debug info enabled" It's enabled. edit: hmmmm .debug is not present in the exe edit2: got it, place debug info in a separate tds file was checked -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
Well, OllyDbg loads fine a 27Mb pdb and I picked an address from the end of the map and it's translated in the debugger. Great work! -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
yep: Debug info formats: ▪ PDB, COFF, DWARF, STABS -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
yes yes yes yes yes yes yes! finally we can debug too! @Anders Melander it works! \o/ -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
great! thank you. I'll test is right now. the 16Mb+ is "just" some recursive stuff, looking forward to it! -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
It's true, that's why I tried to read all kind of pdb's with it to see if it fails on them but could not find any. -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
@Anders Melander 8mb/14mb I can send you if you want. Jetbrains dotPeek says that it can not read beyond the stream. Also, offset size / files count mismatch. The latter is at the end of the file right before the filenames, ~3rd field in the table. -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
@Anders Melander this tool works on the pdb of the test app but does not show anything on a bigger project https://github.com/Microsoft/microsoft-pdb/blob/master/cvdump/cvdump.exe there is somewhere just a tiny glitch I'm sure -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
As for the lines, if they are empty (xxx:00000000) there is either no code in the unit or the unit was in the project but not used anywhere, thus it's not linked to the exe. At least these are my observations. Sadly still no luck with a bigger project. OllyDbg loads the pdb without yielding any error, but can't really use it. Same in VTunes, obviously. -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
@Anders Melander did you update the exe? can I try it? -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
@Anders Melander hohooo!!! The test project's pdb just works fine with OllyDbg!!! Is that cool! I'd contribute with pleasure to get that right with large projects too but I can't deal with inline vars. -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
me neither, everything func@addr there must be something with the pdb as I can't even use it in a debugger, I'll try with simpler ones -
MAP2PDB - Profiling with VTune
Attila Kovacs replied to Anders Melander's topic in Delphi Third-Party
okay, my first try was 26Mb pdb. Where is the problem with larges sizes as 16Mb? [58555] Failed to resolve symbol to module: 0005:00000098 SysInit.TlsLast [58557] Failed to resolve symbol to module: 0004:FE72B000 SysInit.__ImageBase Is that bad? exe was not patched, not sure if because of the messages above or because of the 26Mb limit, no real information. edit: ok, tested with another project, same messages, deleted the lines from the map, exe was patched fine with pure -bind and exe was not ptached with -bind:filename.exe -
Depending on the MTA settings it could keep and try to pass it to the MX for even 5+ days. Date could also be in the future and not only in the past. Spamfilters are ranking emails with points, you could adopt this method. Also, you could look up spamassassin's and policyd-weight's rules to find out more.
-
Unicode string - how element iterating?
Attila Kovacs replied to vfbb's topic in RTL and Delphi Object Pascal
TextElementEnumerator looks really lightweight and GetUnicodeCategory is already in System.Character. Not sure what unicode version supported though. -
Unicode string - how element iterating?
Attila Kovacs replied to vfbb's topic in RTL and Delphi Object Pascal
it's 4 bytes only and the modifier (to make it lighter) is also 4 bytes like 🧑🏿🦽 is D8 3E DD D1 = 🧑 D8 3C DF FF = skin tone modifier 20 0D = zero width joiner D8 3E DD BD =🦽 and how to find out that it's one emoji? I'm afraid you have to parse the codes and go after the rules defined in the RFC. -
Ok, it's not a memory leak. It's GDI leak 😉 You are right, there is not necessarily an initialized canvas. I assumed it's a TPanel already. By the way, for some reason which I can't recall, I'm using a TImage and its TBitmap, not only TBitmap. In order: Form -> TPanel client aligned -> TImage client aligned and blurred. (To "lock" an application) Maybe to give the painting stuff away....
-
I can't see ReleaseDC. Also, instead of DC you could pass Canvas.Handle. Also, you could tune it with only repainting clipping area's. Btw, for me it works with pf32bit.
-
Delphi WAT of the day
Attila Kovacs replied to Stefan Glienke's topic in RTL and Delphi Object Pascal
Ahh, I see. @Stefan Glienke So you mean, it should not compile if the integer size and signedness does not match to any of the method declarations? Or should it bring warnings? I'd love to see those messages, could be interesting! -
Delphi WAT of the day
Attila Kovacs replied to Stefan Glienke's topic in RTL and Delphi Object Pascal
@Stefan Glienke yop, I've seen that, still... anyway reload my comment again 🙂 -
Delphi WAT of the day
Attila Kovacs replied to Stefan Glienke's topic in RTL and Delphi Object Pascal
restart, mom if I add procedure test(a: Int64; b: Int32); overload; begin Writeln('Int64/Int32'); end; everything is ok again. Why should the compiler decide for Int64 if it fits into Int32? We know that the type cast in the const declaration is just some placeholder. -
@aehimself I see. I'd add a client aligned panel on the top of it, drawing a dimmed/blurred image from the things below and adding some controls to this panel to interact with. You just have to make sure that the underlying controls can't be triggered/selected with pressing tab. Perhaps you need an intermediate container tab on each sheet to be able to disable the whole sheet but not the dimmed/blurred one.
-
Could you define the symmetric difference of the sets "Everything" and "important stuff" ? We have no idea what else could be on the page which would make sense to dim but not the "important stuff". Are you putting unimportant stuff onto the forms? 🙂 Enemy deception? 🙂
-
Range Check Error ERangeError
Attila Kovacs replied to david_navigator's topic in RTL and Delphi Object Pascal
I've found some cardinal() casts in some legacy code for pointers 😉 @luebbe are those casts in ICS Demo also for pointers or for integer numbers? -
Range Check Error ERangeError
Attila Kovacs replied to david_navigator's topic in RTL and Delphi Object Pascal
Reload my comment. 😛