Jump to content

dummzeuch

Members
  • Content Count

    2606
  • Joined

  • Last visited

  • Days Won

    88

dummzeuch last won the day on February 28

dummzeuch had the most liked content!

Community Reputation

1377 Excellent

Technical Information

  • Delphi-Version
    Delphi 2007

Recent Profile Visitors

18137 profile views
  1. I have seen that happen even without using GetIt. I think it is related to converting the files from LF to CR/LF style line ends. But I never actualy verified this, so I might be wrong.
  2. dummzeuch

    Embed line number at design time??

    No, at least if I remember correctly that the generated format was compatible to jcldebug. But thanks for the link anyway. I have wanted to look into synopse logging since I read about it in that blog post ... OMG: 2011? > 10 years ago!
  3. dummzeuch

    Embed line number at design time??

    You should get the line number of the original function if you pass 1 as the parameter to LineByLevel instead of the default 0.
  4. dummzeuch

    Embed line number at design time??

    Just keep in mind that calling GetLocationInfo is rather costly. It's not meant to be called all over the place. If I remember correctly somebody claimed to have improved the jcldebug file format to make it much smaller and lookups faster. Unfortunately I don't remember who it was and where I read about it. It's quite possible that he donated the code to the jcl in the mean time
  5. dummzeuch

    Embed line number at design time??

    It does indeed. It should also be possible to write a function that reads its own return address from the stack and then returns this value as the result. This then could be passed to GetLocationInfo. I'm not sure how to implement this, but it shouldn't be rocket science. Edit: There is System.ReturnAddress, introduced with Delphi XE2, which gives you just that, so function GetCurrentLineNumber: Integer; var ModInfo: TJclLocationInfo; begin ModInfo := GetLocationInfo(ReturnAddress); Result := ModInfo.LineNumber; end; Should do the trick (untested) Edit: Just tried it. It works, at least in Delphi 10.2. Edit: JclDebug already contains such a function called LineByLevel.
  6. dummzeuch

    Formatter line wrapping and indention

    No idea. I currently don't find the time to do anything on it.
  7. dummzeuch

    Delphi 12 error when closing the ide

    I know that GExperts can cause this. Unfortunately I so far was unable to find the actual problem. It seems to be connected with using the formatter very frequently.
  8. dummzeuch

    Can LoadResString be done according to language ?

    dxgettext can translate ressource strings. It does so by hooking several RTL functions, one of them being LoadResString. Last time I looked it only worked for 32 bit Delphi, unless somebody has ported it to 64 bit by now.
  9. I can't be bothered, sorry. I was only "thinking aloud". Maybe I shouldn't have written it as a comment, though.
  10. I wonder how much of the time depends on where the file is read from: RAM Disk, SSD, HDD and for the latter whether it's already in the cache or not. 2 (American billion) = 2.000.000.000 lines of about 15 characters makes it about 30.000.000.000 bytes, that's 30 Gig of data to read, split into lines, then split into name and value and then aggregate by name. 32 bit Delphi won't be able to handle that with Stringlist because it won't fit into memroy, I wonder whether there are any bugs in the RTL that would prevent that with a 64 bit Delphi program. But anyway: Using a StringList is probably not the most efficient way of reading the data. Plain old ReadLn would likely do the trick faster. Some kind of buffering might speed it up and maybe parsing based on a PChar pointer rather than strings. Then selecting a suitable datastructure, probably some hash based dictionary. The rest is not much of a challenge.
  11. dummzeuch

    Visually edit a custom component

    There is also Delphi Custom Containers Pack. For some types of components I prefer that over frames.
  12. Delphi 12 creates an entry in the (Open Shell) start menu directly under programs. I don't want that entry that so I deleted it. But every time I start the Delphi 12 IDE that entry is added again. This is really annoying. Is there a setting somewhere that controls this?
  13. dummzeuch

    Delphi 12 Watch list

    I was just about to ask the same as @Der schöne Günther: Why did you put those two dots in front of AsString? That might confuse the watch window.
  14. dummzeuch

    Delphi and "Use only memory safe languages"

    We already had that: It was called Delphi for dotNET. AFAIK the last Version was Delphi for dotNET 2007. Somehow it didn't catch on.
  15. dummzeuch

    Delphi and "Use only memory safe languages"

    Some parts of the Linux kernel are being converted to Rust. Also, many parts of the Linux distributions are written in Python oder even shell scripts. Some Perl can still be found there too.
×