Reminder to self: when you get Unknown function at TMethodImplementationIntercept in a Delphi stack trace from the Exception.StackTrace property or FastMM memory report:
Ensure you generate a .MAP or .TDS file with full debug information
Copy the .MAP or .TDS files to directory of your EXE.
This function is called to return an opaque data structure that contains stack information for the given exception information record. This function will be called when the exception is about to be raised or if this is an external exception such as an Access Violation, called soon after the object is created.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters
There are a few experts Delphi needs for project management:
verify the .dproj against the .dpr as these get out of sync often, especially in multi-person or multi-branch projects
verify .dproj and .dpr against files on disk (often there are files on disk not in the Project Manager; Visual Studio has this nice [WayBack] “Show All Files” button that helps fixing this there)
Welcome to the Book of the Runtime (BOTR) for the .NET Runtime. This contains a collection of articles about the non-trivial internals of the .NET Runtime. Its intended audience are people actually modifying the code or simply wishing to have a deep understanding of the runtime. Below is a table of contents.
An authenticated remote attacker can execute arbitrary code in Firebird SQL
Server versions 2.5.7 and 3.0.2 by executing a malformed SQL statement. The
only known solution is to disable external UDF libraries from being loaded. In
order to achieve this, the default configuration has changed to UdfAccess=None.
This will prevent the fbudf module from being loaded, but may also break other
functionality relying on modules.
Here is the Debian security page with the issue : CVE-2017-11509
Reminder to self: find the Windows keyboard shortcuts as well.
Thanks @steinhh for the Cmd–KO keyboard combination. I was not aware of that yet and I am going to use this next week on a multi-monitor system to see how well that works.
Your tip made me found the PDFs below and made me make the lists/screenshots below as well.
I saw the below notification recently, but it was already enabled.
Akismet & Privacy.
To help your site be compliant with GDPR and other laws requiring notification of tracking, Akismet can display a notice to your users under your comment forms. This feature is disabled by default, however, if you or your audience is located in Europe, you need to turn it on.
If a given class constructor is eligible to be invoked (ie. it was linked into your application), it will run immediately before the initialization section for the unit in which the class is implemented. The class destructors will be invoked immediately after the finalization section for the unit in which the class is implemented.
HiDPI with VCL still needs quite a bit of work, even on running one monitor (mixing regular DPI and HiDPI monitors will likely always be a pain for any pixel based environment)…
Note figuring out errors is not always easy, as Delphi 2009 introduced the System.TMonitor record for thread synchronisation, next to the existing Forms.TMonitor class that had monitor settings.