-
Content Count
2262 -
Joined
-
Last visited
-
Days Won
117
Everything posted by Anders Melander
-
Several F2084 Internal Error on Delphi 10.4.2
Anders Melander replied to Davide Angeli's topic in Delphi IDE and APIs
Sounds like that code formatter is really important to you. -
Good quality Random number generator implementation
Anders Melander replied to Tommi Prami's topic in Algorithms, Data Structures and Class Design
Yes it is, but if you can't define what "better quality" is then your request is meaningless. In any case, like David said, a web search should give you plenty of candidates. Did you try that first? -
If I may provide some constructive critique I think you should update your toolbar & dialog icons to match the UI style of the rest of application. Those 3D glyphs look really out of place and it's clear that they come from different icons sets: Flat, 2D/3D, shadow/no shadow. Also: Cancel button goes on the right on Windows
-
A guess :
-
What is the best way to precisely time/trigger threaded events
Anders Melander replied to Yaron's topic in Windows API
Yes, I understood that but if you're concerned about not wasting resources, as you state, then there's no reason to refresh more often than what the monitor can handle. -
What is the best way to precisely time/trigger threaded events
Anders Melander replied to Yaron's topic in Windows API
Okay, that makes better sense. Instead of updating at a fixed 120 Hz I think you'll want to sync your refresh to the monitors vertical retrace. I don't know how to do that but I found this: http://masm32.com/board/index.php?topic=4410.0 -
What is the best way to precisely time/trigger threaded events
Anders Melander replied to Yaron's topic in Windows API
If a regular WM_PAINT handler will not update fast enough I can't see how a timer controlled paint will. What am I missing? -
What is the best way to precisely time/trigger threaded events
Anders Melander replied to Yaron's topic in Windows API
You want to update the screen 120 times per second? Why on earth would you want to do that? -
Does Delphi have a counterpart for C#/.NET Uri.IsWellFormedUriString?
Anders Melander replied to wuwuxin's topic in RTL and Delphi Object Pascal
Or the one-liner: TRegEx.IsMatch(FUrl, sUrlRegEx, [roIgnoreCase, roIgnorePatternSpace]) -
64bit Debugger Not Handling Memory Problems
Anders Melander replied to CB2021's topic in General Help
http://docwiki.embarcadero.com/RADStudio/Sydney/en/Using_CodeGuard -
The feature nobody ever asked for strikes again. I wish they would realize their mistake and make it opt-in instead of opt-out-if-you-know-how-to. Think of all the people that doesn't even know about this and just assume it's because Delphi now suck balls - learn to live with it.
-
MAP2PDB - Profiling with VTune
Anders Melander replied to Anders Melander's topic in Delphi Third-Party
As it seems that the most recent version of VTune also suffer from the performance problem I mentioned earlier, I 've now added a note about the problem to the repository readme and uploaded the files that can be used to fix it. https://bitbucket.org/anders_melander/map2pdb/src/master/#markdown-header-performance-problems-with-intel-vtune -
MAP2PDB - Profiling with VTune
Anders Melander replied to Anders Melander's topic in Delphi Third-Party
Yes. I'm on Windows 7 too. -
MAP2PDB - Profiling with VTune
Anders Melander replied to Anders Melander's topic in Delphi Third-Party
Sure. Send me the map file by PM. -
Not really. Many of them are cheaper than a quality Cherry MX keyboard. And in case of zombie apocalypse you are well prepared. https://i.imgur.com/g2Yo3.gif (no inline GIFs...? 😕)
-
AFAIK Unicomp bought the rights to the key design but unfortunately they missed the fact that it's just as much the quality that made this keyboard the legend it is. From what I've read the money are better spent on a used original IBM (or Lexmark) model M. Nice!
-
Well, according to the label under my keyboard it's from 1995 so it's seen some stuff. I've got a spare that's even older. You can still get a model M in good (or refurbished) condition on eBay. The main problem will be the mainboard keyboard connector. I have one keyboard with the "new" 6 pin mini-DIN PS/2 connector (the one I use) and one with the old 5 pin DIN connector. The cable is detachable so the cable with the PS/2 connector fits both keyboards. Anyway, even if your mainboard has a PS/2 connector it might not be able to supply enough power through it. The model M needs a bit of power when it "boots" so sometimes I have to reboot the PC a few times before there's life in the keyboard. Usually not a problem as I always go to standby. Also be aware that most USB-PS/2 adapters doesn't supply enough power. I also have a backup keyboard with Cherry MX Blue (tactile, clicky) switches but it's just not the same.
-
@Dany Marmur My own desktop system is built around a 9 year old Asus mainboard in a 16 years old Lian Li PC-V2100B Plus II case. AFAIR I upgraded the CPU 5 years ago. It was built from parts, so fairly cheap, and it works fine. I've never had much success (performance) with the prebuilt systems my various employers have forced on me. No matter how much money they used on it. My laptop though is a Lenovo Thinkpad X1 Extreme but I seldom use it. I need a mans keyboard 🙂 Wow. Looking at the picture I just noticed the gunk between the keys 🤮. I usually don't look at the keyboard.
-
How does a transparent case and fans with LED lighting help with that?
-
-
Have you disabled LiveBindings?
-
MAP2PDB - Profiling with VTune
Anders Melander replied to Anders Melander's topic in Delphi Third-Party
It turned out that the culprit was the version of msdia140.dll that came bundled with the version of VTune I'm using. There's a bug in it that causes exponential slowdown on large pdb's. Replacing the dll with a new version fixed the problem. The symbol resolve time of my test project fell from hours/days to ~10 minutes. The old msdia140.dll was version 14.10.25017.0, the new is 14.28.29913.0. Any version from VS2019 or later should do AFAIK. A side effect of trying to solve this performance problem was that I added segment/section filters. You can now specify what segments to include/exclude from the pdb. For example since almost all code is in segment 0001 you can exclude all modules and symbols that reside in other segments. This can cause a significant reduction in the size of the pdb. Try this: map2pdb -v -include:0001 foobar.map or try with the -debug switch to get all the details. I'm considering just adding this 0001 filter as a default. I've uploaded a new version (2.6) with all the latest changes (there aren't that many): https://bitbucket.org/anders_melander/map2pdb/downloads/ Also the repository finally has a readme.md -
MAP2PDB - Profiling with VTune
Anders Melander replied to Anders Melander's topic in Delphi Third-Party
Works for me so there was probably something wrong with the pdb at that time. I've tried both with a small and a very large application. On the positive side uProf resolved a lot faster than VTune but I'm a bit surprised about how basic the uProf feature set is and I can't really imagine what I would use it for. Also, it has pie charts... WTF? -
TPrinter/TCanvas is GDI printing. It's likely that there are bugs in TPrinter in Delphi 5 that has since been fixed. I seem to recall that there were quite a lot of them. Buffer overflows and whatnot. What has happened is probably that your application has been using GDI in a way that was invalid but was worked around by Windows and now they've stopped working around it.
-
Is a "bare-minimum" EurekaLog possible?
Anders Melander replied to aehimself's topic in Delphi Third-Party
One thing to be aware of with EurekaLog is that it, in my experience, makes the link stage unbearable slow for large projects. This alone has made me replace it with madExcept in a few projects. I have my small grievances with madExcept too though. In particular the fact that it pumps the message queue, for no good reason, when processing silent exceptions.