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

ICY DOCK SATA/SAS Hot Swap Wechselrahmen für 16x: AmazonSmile: Computer & Zubehör

Posted by jpluimers on 2020/02/07

Want: [Archive.isICY DOCK SATA/SAS Hot Swap Wechselrahmen für 16x: AmazonSmile: Computer & Zubehör.

Reasons:

  • 80 mm fan
  • 16 slots for SSD
  • 4x SFF-8643 MiniSAS connector to minimise cabling

 

Posted in Power User, SSD | Leave a Comment »

Wasemkap op ventilatiesysteem? – Installatie.nl

Posted by jpluimers on 2020/02/07

Voor mijn link archief: [WayBackWasemkap op ventilatiesysteem? – Installatie.nl

Ofwel: wat als je een WTW of warmeterugwininstallatie hebt en een afzuigkap zonder motor?

En wat voor filters heb  je er voor nodig?

En welke in de WTW?

Die laatste heb ik gevonden: Artikelnummer Stork: 006040085

–jeroen

Read the rest of this entry »

Posted in LifeHacker, Power User | Leave a Comment »

How to remove a 3M Adhesive Pad Dash-Cam or Helmet-Cam Mount – YouTube

Posted by jpluimers on 2020/02/07

The trick from Techmoan: saw with dental floss.

Be sure to watch his Dash Cam category.

–jeroen

Read the rest of this entry »

Posted in LifeHacker, Power User | Leave a Comment »

Why does HRESULT begin with H when it’s not a handle to anything? – The Old New Thing

Posted by jpluimers on 2020/02/06

Interesting bit of history: [WayBackWhy does HRESULT begin with H when it’s not a handle to anything? – The Old New Thing.

TL;DR:

  1. It used to be a handle
  2. Few programs cared about the underlying objects
  3. Managing the underlying objects was way too expensive
  4. It got trimmed down to a number, but the name stuck

–jeroen

Posted in Development, History, Software Development, The Old New Thing, Windows Development | Leave a Comment »

Delphi Berlin and up without disabled Castalia: Use Ctrl+W to select content in the IDE code editor. Place your curso…

Posted by jpluimers on 2020/02/06

If you have enough guts to keep Castalia enabled and have Delphi Berlin or higher, then you can use this shortcut:

[WayBack] Tip: Use Ctrl+W to select content in the IDE code editor. Place your cursor some random piece of code, preferably deep in code that have nested block… – Lars Fosdal – Google+

–jeroen

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

Check your PHP project for known security issues – SensioLabs Security Advisories Checker

Posted by jpluimers on 2020/02/05

If I ever cross a PHP project, this is my first requirement to pass: [WayBack] Check your PHP project for known security issues – SensioLabs Security Advisories Checker

–jeroen

Posted in Development, PHP, Scripting, Software Development | Leave a Comment »

Why Your Team Is Not Working as a Team – The Startup – Medium

Posted by jpluimers on 2020/02/05

Being part of a team can be tough, so this article has Seven ways individualism is getting in their way: [WayBack] Why Your Team Is Not Working as a Team – The Startup – Medium.

Via: [WayBack] “When your top players don’t know how to work together, their individual talents are useless.” – Marjan Venema – Google+ (who is a great coach!)

–jeroen

 

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

The magic Delphi ReturnAddress intrinsic

Posted by jpluimers on 2020/02/05

I could not find any official place where ReturnAddress is documented even though it is used at quite a few places in the RTL, VCL, FMX and 3rd party libraries like DUnitX, Spring4D, JCL, ReportBuilder, TeeChart.

I tried searching it in the contexts of Delphi 2007, Delphi 2009, but there is only a [Archive.is] different System.ObjAuto.TParameters.ReturnAddress documented in XE2 and higher.

procedure Abort;
begin
  raise EAbort.CreateRes(@SOperationAborted) at ReturnAddress;
end;

There is a (usually broken*) ReturnAddr function used in various places of the RTL/VCL/FMX and (therefore wrongfully copied) in many other peoples code.

  function ReturnAddr: Pointer;
  // From classes.pas
  asm
    MOV     EAX,[EBP+4] // sysutils.pas says [EBP-4], but this works !
  end;
  • See the above link; I think this was fixed in Delphi XE, but the issue is still open.

Related to the above is the documented ExceptAddr.

I’ve used this in my ExceptionHelperUnit to build a GetStackTrace function in the example gist below.

I found these posts documenting the behaviour of the above intrinsic functions and more:

–jeroen

Read the rest of this entry »

Posted in Conference Topics, Conferences, Delphi, Development, Event, Software Development | Leave a Comment »

I love installers that can download and install in parallel threads….

Posted by jpluimers on 2020/02/04

[WayBack] I love installers that can download and install in parallel threads. Embarcadero and Zypper can learn from this. – Jeroen Wiert Pluimers – Google+

Most Linux distributions have package managers that can do this (apt and yum can), but OpenSuSE zypper (actually ZYpp) cannot even download packages in parallel:

Embarcadero is in the same state as zypper.

–jeroen

Posted in *nix, Development, openSuSE, Power User, Software Development, SuSE Linux, Tumbleweed | Leave a Comment »

Delphi: Bezier in FMX

Posted by jpluimers on 2020/02/04

In case I ever need to do some Bezier curve coding in Delphi: [WayBack] GitHub – zhaoyipeng/FMXComponents: Firemonkey Opensource Components

Via: [WayBack] Interesting set of components for FireMonkey – Christen Blom-Dahl – Google+

–jeroen

Read the rest of this entry »

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