The Wiert Corner – irregular stream of stuff

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

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • 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 2018

One more reason to disable live bindings: it throws exceptions when a project is in a project group having multiple projects upon project group load

Posted by jpluimers on 2018/08/02

This was Delphi Berlin, but Live Bindings is not much better in any other Delphi version when opening a project group having multiple applications none of which use Live Bindings:

This is how you disable them in Delphi 10.1 Berlin from the console; modify your BDS version and BPL version for other Delphi versions:

reg add "HKEY_CURRENT_USER\Software\Embarcadero\BDS\18.0\Disabled Packages" /v "$(BDSBIN)\dclbindcomp240.bpl" /t REG_SZ /d "Embarcadero LiveBindings Components" /f
reg add "HKEY_CURRENT_USER\Software\Embarcadero\BDS\18.0\Disabled Packages" /v "$(BDSBIN)\dclbindcompfmx240.bpl" /t REG_SZ /d "Embarcadero LiveBindings Components FireMonkey" /f
reg add "HKEY_CURRENT_USER\Software\Embarcadero\BDS\18.0\Disabled Packages" /v "$(BDSBIN)\dclbindcompvcl240.bpl" /t REG_SZ /d "Embarcadero LiveBindings Components VCL" /f
reg add "HKEY_CURRENT_USER\Software\Embarcadero\BDS\18.0\Disabled Packages" /v "$(BDSBIN)\dclbindcompdbx240.bpl" /t REG_SZ /d "LiveBindings Expression Components DbExpress" /f
reg add "HKEY_CURRENT_USER\Software\Embarcadero\BDS\18.0\Disabled Packages" /v "$(BDSBIN)\dclbindcompfiredac240.bpl" /t REG_SZ /d "LiveBinding Expression Components FireDac" /f

(Reminder to self: modify bitbucket.org/jeroenp/wiert.me/src/tip/Native/Delphi/Scripts/List-Delphi-Installed-Packages.ps1 so it can generate these)

Edit: I have done just that: it now understands the GenerateDisablePackagesScriptparameter so it generates a small console script to disable various packages.

In QualityCentral: 144003 – Automated Incident Report:

Read the rest of this entry »

Posted in Delphi, Development, Live Bindings, Software Development | 2 Comments »

Diffing binary files in PlasticSCM through Beyond Compare

Posted by jpluimers on 2018/08/02

The diff engine in PlasticSCM is nice in appearance, but it lacks a lot of features for file types that Beyond Compare handles out of the box.

For instance, .RES files cannot be diffed:

---------------------------
Error
---------------------------
Unsupported file types for binary diff. Only images are supported (JPEG, PNG, GIF, BMP)
---------------------------
OK   
---------------------------

Read the rest of this entry »

Posted in Beyond Compare, Development, PlasticSCM, Power User, Source Code Management | 2 Comments »

Just curious whether anyone has had experience with the Uses Cleaner written by Oleg Zhukov…

Posted by jpluimers on 2018/08/02

Reminder to self: see if there was follow-up on [WayBack] Just curious whether anyone has had experience with the Uses Cleaner written by Oleg Zhukov: http://www.olegzhukov.com/UsesCleanupceaf.zip?fileticket=R_… – Bill Meyer – Google+

File: [WayBackhttp://www.olegzhukov.com/UsesCleanupceaf.zip?fileticket=R__cxggc2OA%3d&tabid=73&mid=402

–jeroen

Posted in Delphi, Development | 1 Comment »

Interesting channel with a truckload of Firemonkey FMX demos: Quark Cube – YouTube

Posted by jpluimers on 2018/08/01

[Archive.is] Quark Cube – YouTube:

We create tutorials. And all this without the usual stuff. We want to show how you can work with FireMonkey. Our tutorials are not available as source code. We want to show you a look more, and yes, we do it. Fast, reliable, targeted, unambiguous and ahead of its time. We love Delphi with FireMonkey. #ILoveDelphi

The vides are at [Archive.is] (70) Quark Cube – YouTube

Via Dave Nottage

–jeroen

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

TIME_WAIT and MaxUserPort – what it is, what it does, when it’s important – Blog du Tristank

Posted by jpluimers on 2018/08/01

Despite many posts saying you can use it on other than outbound connections, lets quote that it doesn’t:

MaxUserPort controls “outbound” TCP connections

[WayBackMaxUserPort is used to limit the number of dynamic ports available to TCP/IP applications.

It’s never going to be an issue affecting inbound connections.

MaxUserPort is not the right answer if you think you have an inbound connection problem.

Source: [WayBackMaxUserPort – what it is, what it does, when it’s important – Blog du Tristank

The side of the TCP connection that closes is gets the TIME_WAIT state, which means you should avoid your server to terminate connections because it then will run out of available ports. Clients should disconnect when done (or when done for the foreseeable future) otherwise the server gets the 2MSL TIME_WAIT penalty as for instance explained by [WayBack] TIME_WAIT and its design implications for protocols and scalable client server systems – AsynchronousEvents.

The solution for inbound connections is that your TCP based protocol should enforce either the client to close the connection, or to use some form of client pooling so there is no need for many connection setup/teardowns of short lived connections.

TIME_WAIT can last for about ~10 minutes if you are unlucky.

More recommended reading:

–jeroen

Posted in Communications Development, Development, Internet protocol suite, Software Development, TCP | Leave a Comment »

On my research list: FastMM4 LogAllocatedBlocksToFile to help find pseudo “leaks”: allocations released at application end, but during run-time progressively increase memory usage

Posted by jpluimers on 2018/08/01

From a quick scan for LogAllocatedBlocksToFile, I found these links I need to dig deeper into:

This in oder to spot “leaks” at run-time that are being release at process end, but build up memory usage over time. Some might call them “live leaks”.

Basically this is a technique I used a long time ago when I wrote a memory allocation dumper and parsing tool combination in the Turbo/Borland Pascal era called “Korsakov” (I might even have updated that to Delphi 1 once, but soon in Delphi better tools became available).

Another tool that might help here is [WayBackGitHub – yavfast/dbg-spider: Spider – Delphi profiler with docs at [WayBack] Spider – Delphi profiler:

–jeroen

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

Many ways to lock your MacBook

Posted by jpluimers on 2018/07/31

There are [WayBack] 7 ways to lock your MacBook – CNET: When it comes to locking your Mac, you have options.

For now I’ve added the below alias to my ~/.bash_profile which only works if you have “require a password immediately after sleep or screensaver begins”. I have that enabled (with a 5 second delay, not immediate so that when I’m behind my laptop and it starts the screensaver I can still move the mouse or touch a key to keep it awake).

alias sleep-display='pmset displaysleepnow'

See:

–jeroen

Posted in Apple, iMac, Mac, MacBook, MacBook Retina, MacBook-Pro, Power User | Leave a Comment »

Schrödinger’s dir Source: https://redd.it/662rkp #ProgrammerHumor

Posted by jpluimers on 2018/07/31

[WayBack] Schrödinger’s dir : ProgrammerHumor

–jeroen

Via: [WayBack] Schrödinger’s dir – Source: https://redd.it/662rkp #ProgrammerHumor – This is why I Code – Google+

Read the rest of this entry »

Posted in Fun, Geeky | Leave a Comment »

Don’t expect high floating point performance from the Delphi for Linux compiler

Posted by jpluimers on 2018/07/31

Don’t expect high floating point performance of the Delphi for Linux compiler as this thread proves it is not: [WayBack] Based on a recent post here, it looks like the new Linux compiler uses the x87 unit for floating point. Naturally this won’t perform well. If it is true… – David Heffernan – Google+

–jeroen

Posted in Delphi, Delphi 10.2 Tokyo (Godzilla), Development, Software Development | 5 Comments »

Today one year ago, it was a wonderful day waking up the morning after the World Music Contests…

Posted by jpluimers on 2018/07/31

Looking back, it was an awesome time: [WayBack] It’s a wonderful day waking up the morning after the World Music Contests are over while still a bit amazed you won with your Marching Band +Adest Music… – Jeroen Wiert Pluimers – Google+

Too bad that the hypermobility of my joints forced me to first stop performing parades with the marching band, and in a few months time will lead to my last show performance in the field.

The pain and recovery times have increased too much to bear with them.

Furthermore, care taking tasks also have been fluctuating very much, with an ever gradually increasing base-line.

Hopefully that will change later in the year, by finding new people that can assist me with that.

For now it means I have to balance work and care taking, leading to no conference performances for the second half of the year.

The work I do has changed for the better. Where last two calendar years were centered around an energy sucking environment, the current one gives me energy.

That helps me in my balancing act, especially since sitting and playing percussion is OK enough for now.

One year ago:

It’s a wonderful day waking up the morning after the World Music Contests are over while still a bit amazed you won with your Marching Band +Adest Musica World 2nd on the Show, World 4th on the March and the finale day public prise.

What makes this extra special for me is that I had the opportunity – after skipping the WMC 2005 edition because of care-taking reasons, and performing in the drum pit during the 2009 and 2013 editions – to perform the show in the field one more time.

The field performance will also be my last time at WMC, as I need to see a rheumatologist because of gout and joint problems. Likely the outcome will be somewhere between having a rheumatic disease, or too much abuse of the joints. Which means to step down a bit. Approaching 50, I have no problem with finding another role within the marching band as I’d love celebrating my 40th band membership in 2020.

Thanks everyone at +Adest Musica for allowing to do this performance in the field one more time and giving me enough opportunity to take care for my brother next to it.

See you all again at the end of August to prepare for autumn gig season.

The link is to a tweet of the mayor of Teylingen, the municipality encompassing Sassenheim where +Adest Musica is based. She attended the finale day and is very proud (:

https://twitter.com/CarlaBreuer/status/891704064131702784

Carla Breuer⚘ on Twitter
Carla Breuer⚘ on Twitter

8 months ago

–jeroen

 

Posted in About, Personal | Leave a Comment »