A.M. Hoornweg
Members-
Content Count
468 -
Joined
-
Last visited
-
Days Won
9
A.M. Hoornweg last won the day on August 2
A.M. Hoornweg had the most liked content!
Community Reputation
144 ExcellentRecent Profile Visitors
The recent visitors block is disabled and is not being shown to other users.
-
Double, default value
A.M. Hoornweg replied to Skrim's topic in Algorithms, Data Structures and Class Design
Exactly. -
Double, default value
A.M. Hoornweg replied to Skrim's topic in Algorithms, Data Structures and Class Design
Just declare class procedure MyFormShow(Sender: TObject); STATIC; That way the method does not have a hidden "self" parameter. Having no "self" parameter turns the class method into a regular procedure inside the namespace tTest (it is no longer a "procedure of object"). Static class methods are unable to access any members or methods that require a "self" parameter. -
Double, default value
A.M. Hoornweg replied to Skrim's topic in Algorithms, Data Structures and Class Design
I for one would find it an advantage if stuff like local pointer variables would default to NIL, it would make the language just a little bit more memory safe. -
Double, default value
A.M. Hoornweg replied to Skrim's topic in Algorithms, Data Structures and Class Design
As far as I know, when an object is created all its members are filled with zero. And for stack variables, all managed types are filled with zero upon entry of a method. However, wouldn't it actually save CPU time if Delphi simply wiped the local variables area of the stack upon entry of a method (a known fixed number of bytes - a simple REP STOSD will do) instead of determining which local variables are managed types and then wiping those individually? -
tParallelArray and interfaces
A.M. Hoornweg replied to A.M. Hoornweg's topic in RTL and Delphi Object Pascal
This is a totally weird experience. Tuesday my compiler kept saying "There is no overloaded version of tParallelArray.For ... that can be called with these arguments" and I searched in vain for the cause. Then something came up and I had to abandon the project for a few days. Today I resumed working on it and it compiled just fine - I had changed nothing! I think that something got corrupted in the memory of the IDE process on Tuesday and the reboot just made it go away... I do have regular exceptions in the IDE since installing the inline update for 12.2 (build nr 29.0.53982.0329). Anyway, I'm thrilled that I can continue now. -
Hello all, just a short question: is System.Threading.tParallelarray not usable with interfaces? The following won't compile: Type iDownloadJob=Interface [{3d24b7a2-6111-46e7-a281-7fdc318be5c4}] procedure Download; end; procedure test; var x: array of iDownloadJob; temp:Integer; begin // ..... fill the array here .... temp:=tParallelArray.ForThreshold; tParallelArray.ForThreshold:=1; try tParallelArray.&For<iDownloadJob>(x, procedure (const AValues: array of iDownloadJob; AFrom, ATo: NativeInt) var i:NativeInt; begin for i:=AFrom to ATo do aValues[i].Download; end); finally tParallelArray.ForThreshold:=temp; end; end; It would be just my luck if such a nice new feature doesn't work for me 😞 .
-
Am I right that the the internal source code formatter is no longer there? It is still documented as a feature on Embarcadero's site though: https://docwiki.embarcadero.com/RADStudio/Athens/en/Source_Code_Formatter Is there a third-party formatter that handles generics correctly?
-
Code signing in a remotely working team?
A.M. Hoornweg replied to A.M. Hoornweg's topic in General Help
That's not what I read: "DigiCert KeyLocker is a cloud-based service that helps you generate and store the private key without a physical HSM (Hardware Security Module). It was developed to reduce certificate administrators’ efforts and strengthen private key security." (https://signmycode.com/blog/what-is-digicert-keylocker-everything-to-know-about) -
Code signing in a remotely working team?
A.M. Hoornweg replied to A.M. Hoornweg's topic in General Help
I'm very interested! -
Code signing in a remotely working team?
A.M. Hoornweg replied to A.M. Hoornweg's topic in General Help
The certificate is on the company name., having multiple ones would multiply the costs. I'm just reading up on Digicert Keylocker, which appears to be a cloud-based solution. If I understand correctly, Digicert keeps the USB device with the certificate and users can access it remotely. https://signmycode.com/blog/what-is-digicert-keylocker-everything-to-know-about https://www.digicert.com/blog/announcing-certcentrals-new-keylocker -
Code signing in a remotely working team?
A.M. Hoornweg replied to A.M. Hoornweg's topic in General Help
We moved away from a build server several years ago; we work on several independent projects and kept getting in each other's way. -
I have updated my Delphi 12.1 Enterprise to version 12.2, selecting the Windows, Android and Linux platforms in the installer. But the Linux platform seems to be missing in the IDE and fmxLinux is unavailable in GetIt. Am I missing something?
-
Hello all, We're a small company, our Delphi developer team works largely remotely and I'm one of the members who actually lives in a different country from the rest of the team. We must frequently release updates of our various software products. Each team member uses Finalbuilder and Signtool to automate the process of compiling, code signing and generating setups. Some of our products consist of dozens of executables and dll's so the automation of the build-and-sign process is a must-have. Our Digicert EV code certificate expires in February 2025. We're now faced with the problem that certificate providers seem to expect you to have the certificate on a USB device which is kinda unpractical if developers work remotely from different countries. We need common access to the certificate and we need to be able to automate the signing process. I'd very much like to hear from other developer teams who are in the same boat, how they tackle this problem.
-
RAD Studio 12 debugger does not fall into interface methods when pressing F7.
A.M. Hoornweg replied to dmitrybv's topic in Delphi IDE and APIs
Same here. Works in 32-bit, does not work in 64-bit. -
Dynamic array used as a queue. Memory fragmentation?
A.M. Hoornweg replied to A.M. Hoornweg's topic in RTL and Delphi Object Pascal
Access to the queue is only done by a single thread. A circular buffer is not handy because this queue keeps growing until a certain condition is met. Then a number of elements are removed from the beginning of the queue until the condition is no longer met.