The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 1,854 other subscribers

Archive for the ‘Delphi’ Category

GExperts – when your predecessor has put it under the Tools menu

Posted by jpluimers on 2017/03/21

I totally forgot that GExperts can be under the Tools men

GExperts IDE configuration

GExperts IDE configurationu (I’m so accustomed that Alt-X is GExperts and Alt-M is ModelMaker Code Explorer).

These keyboard shortcuts are only assigned when you install GExperts before you install ModelMaker Code Explorer.

If you reverse, then you have to fiddle by removing the ModelMaker Code Explorer expert, then re-add it.

Anyway: you can configure this in the “IDE” tab of the GExperts Configuration.

After that you have to restart the Delphi IDE to reflect the change.

–jeroen

Source: GExperts Help

Posted in Delphi, Development, GExperts, Keyboards and Keyboard Shortcuts, ModelMaker Code Explorer, Power User, Software Development | 2 Comments »

Display and edit keyboard macros with GExperts – twm’s blog

Posted by jpluimers on 2017/03/13

Yes!

The GExperts Macro Library expert can now display and edit keyboard macros that have been recorded in the Delphi IDE.

Thomas did some great work on GExperts. Again.

Source: [WayBackDisplay and edit keyboard macros with GExperts – twm’s blog

Via: [WayBack] The GExperts Macro Library expert can now display and edit keyboard macros that have been recorded in the IDE. – Thomas Mueller (dummzeuch) – Google+

–jeroen

Posted in Delphi, Development, Software Development | Leave a Comment »

Using Delphi nextgen compilers … https://xkcd.com/303/ some arguments to have both for the Win32 platform

Posted by jpluimers on 2017/03/08

Last week there was a nice poke by Stefan Glienke around the Delphi nextgen compiler being used for the upcoming Intel x64 Linux support in Delphi (yes, no Arm there, hopefully somewhere in the future) at [Archive.isUsing Delphi nextgen compilers … https://xkcd.com/303/

It resulted into a nice thread of strengths and weaknesses of the classic and nextgen compilers.

I’m emphasising a long term wish for the Win32 platform to have two compilers: a classic one and an LLVM nextgen one.

Reasons include this:

  • Various compiler architectures can emit code for the same end-platformm: Kylix Linux x86 support uses the classic compiler, new Linux x64 support is using the LLVM nextgen compiler
  • Debugging non-Win32 (x86 on Windows) is slow and buggy at best
  • LLVM nextgen compiler takes about 2 orders of magnitude longer than the classic compiler
  • the classic compiler has various optimisation deficits for about 2 decades and won’t be fixed
  • the LLVM nextgen compiler has many more optimisation opportunities than the classic compiler
  • the LLVM nextgen compiler supports zerobased strings and ARC which are almost impossible to debug because of the debugger issues so writing truly cross platform code using Delphi is a drag

So, please please please Delphi team: provide an LLVM nextgen compiler for the Win32 platform.

via: [Archive.isUsing Delphi nextgen compilers … https://xkcd.com/303/

Recommended video: [WayBack] The recent next gen compiler debate reminded me of this nice talk.This is about c++ but it shows off nicely what a high quality compiler can achieve in terms of optimisation… – Christoph Hillefeld – Google+

–jeroen

Read the rest of this entry »

Posted in Delphi, Development, Software Development | 1 Comment »

The IDE Fix Pack 5.95 is compatible with Delphi 10.1 Update 2

Posted by jpluimers on 2017/03/03

Yes it is compatible: [WayBackAndreas‏ @AndyHTech: Following More Why is there no #IDEFixPack for #Delphi Berlin 10.1 Update 2 ? Just use the one that was released for the RTM version, it works for Up1&Up2.

via: David Heffernan on [WayBack] Is the IDE Fix Pack 5.95 compatible with Delphi 10.1 Update 2? I mean it’s not explicitly mentioned so I’m assuming not, but I’m asking just in case.I… – Asbjørn Heid – Google+

–jeroen

Posted in Delphi, Delphi 10.1 Berlin (BigBen), Development, Software Development | Leave a Comment »

New book by +Nick Hodges tech preview by +Stefan Glienke – dependency injection in delphi

Posted by jpluimers on 2017/02/28

[WayBack] New book by +Nick Hodges tech preview by +Stefan Glienke https://leanpub.com/dependencyinjectionindelphivia Jeroen Wiert Pluimers – Google+:

This book covers Dependency Injection from A to Z.  In it you’ll learn about Constructor Injection, Property Injection, and Method Injection.  You’ll learn about the right and wrong way to use the Dependency Injection Container.

Source: Dependency Injection In Delphi by Nick Hodges [Leanpub PDF/iPad/Kindle]

This is the Chapter List:

  • What is Dependency Injection
  • Benefits of Dependency Injection
  • Constructor Injection
  • Property Injection
  • Method Injection
  • Using the Container
  • A Simple Migration Example
  • Advanced Uses of the Container
  • Dependency Injection Anti-patterns
  • A Full, Useful Example
  • Final Thoughts

–jeroen

Source: New book by +Nick Hodges tech preview by +Stefan Glienke https://leanpub.com/…

Posted in Delphi, Delphi 10 Seattle, Delphi 10.1 Berlin (BigBen), Delphi 2010, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Delphi XE8, Development, Software Development | Leave a Comment »

Delphi sorcery: Generics, modules and typeinfo

Posted by jpluimers on 2017/02/23

the release of 1.2 is almost there! We are working hard to deliver it shortly after the next Delphi release which will happen … soonish, I think. ;)

The release/1.2 branch has been around for a while – please take a look if you haven’t already. It contains a lot of new features and bugfixes. I will tell you more about some of the amazing features next time which won’t take as long as it took since the last blog post – promise. :)

Apart from a very interesting take on DI resolvers, the above great info too!

Please take a look at spring4d/branch/release/1.2 as it has been very stable for quite some time.

Source: [WayBack]: Delphi sorcery: Generics, modules and typeinfo

–jeroen

via: [WayBack] Finally some blog article again ;) – Stefan Glienke – Google+

Posted in Delphi, Delphi 10 Seattle, Delphi 10.1 Berlin (BigBen), Delphi 2010, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Delphi XE6, Delphi XE7, Delphi XE8, Development, Software Development | Leave a Comment »

Delphi, resource files and includes – some links

Posted by jpluimers on 2017/02/23

Some links that were useful getting back into using Delphi with resource scripts and include files:

Maybe I should have considered this alternative:

–jeroen

PS: a first go on a resource file structure for Version Information is below.

Read the rest of this entry »

Posted in Delphi, Development, QC, Resource Files and Scripts (.res/.rc), Software Development | Leave a Comment »

Delphi and stuff: The strange limitation of 64 threads

Posted by jpluimers on 2017/02/21

… there’s no need to use WaitForMultipleObjects in Step 2. It’s fairly easy to keep a counter of active threads in the pool (interlocked-incremented when a thread starts, interlocked-decremented when a thread is finished). When the counter reaches zero (no more active threads), signal an event. With only one event to wait for, you can use WaitForSingleObject

So no more 64-thread (MAXIMUM_WAIT_OBJECTS) limits for pools…

Source: Delphi and stuff: The strange limitation of 64 threads

–jeroen

Posted in .NET, Delphi, Development, Power User, Software Development, Windows | Leave a Comment »

New version of TestInsight (1.1.4) – just a couple of bug fixes…

Posted by jpluimers on 2017/02/21

“Just a couple of bugfixes”, but one is very important to me: [WayBackdouble clicking on a test-result now doesn’t freeze the IDE and brings you to the right source code line.

[WayBack] I just released a new version of TestInsight (1.1.4) – just a couple of bug fixes and small enhancements.You find the download link on the TestInsight… – Stefan Glienke – Google+

Download: [WayBackhttp://files.dsharp.org/TestInsight/1.1.4.0/TestInsightSetup.zip

More info: [WayBacksglienke / TestInsight — Bitbucket

Fixes bugs: [WayBacksglienke / TestInsight / issues – Resolved — Bitbucket

–jeroen

Posted in Delphi, Development, Software Development | Leave a Comment »

Looking for a run-time fix for CreateInOutError raising an EInOutError with the wrong string.

Posted by jpluimers on 2017/02/21

Does anyone have a run-time fix for CreateInOutError raising an EInOutError with Code=3 (correct) and Message=’Invalid file name – %s’ (incorrect becaus… – Jeroen Wiert Pluimers – Google+

[WayBackDoes anyone have a run-time fix for CreateInOutError raising an EInOutError w…:

Does anyone have a run-time fix for CreateInOutError raising an EInOutError with Code=3 (correct) and Message='Invalid file name - %s' (incorrect because System.SysUtils should have used System.SysConst not System.RTLConst and System.RTLConst wrongly duplicates some resource strings in System.SysConst) See [WayBack] http://qc.embarcadero.com/wc/qcmain.aspx?d=129530.
It would be so cool if a fix fills in the %s with the invalid file name.

–jeroen

Later: this seems to be reported in [RSP-20588] Exception message created for missing file has %s – Embarcadero Technologies

Posted in Delphi, Delphi 10 Seattle, Delphi 10.1 Berlin (BigBen), Delphi XE7, Delphi XE8, Development, Software Development | Leave a Comment »