The Wiert Corner – irregular stream of stuff

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

  • My badges

  • Twitter Updates

    • RT @nrc: De AVG wist cookies eronder te krijgen, maar nu storten adverteerders zich op alternatieven die de privacy nog meer bedreigen. Hoe… 8 minutes ago
    • RT @gathara: #BREAKING Dutch police have brutally crushed protests demanding fundamental freedoms, which officials see as embarrassing for… 9 minutes ago
    • RT @Carend_2020: Opnieuw verzorgen we de Webinar: "Interculturele en existentiële zorg bij corona!" Speciaal voor artsen, verpleegkundigen… 12 minutes ago
    • @EinsteinBarbie @bpschut Die heeft me tijden geleden al een keer geblocked. Vast omdat ik iets van je ge-retweet heb (: 12 minutes ago
    • RT @danielverlaan: nieuws: De privégegevens van miljoenen Nederlanders in de coronasystemen van de GGD zijn niet veilig. Er vindt grootsch… 22 minutes ago
  • My Flickr Stream

  • Pages

  • All categories

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

    Join 2,232 other followers

Archive for January 10th, 2018

A way to bypass a Chrome interstitial page is to type a secret keyword…

Posted by jpluimers on 2018/01/10

Some sites do not have their TLS security set- up correctly. You can get around the page that Chrome then displays. This is called the “interstitial bypass”, you should use it with great care (not like one of the sites I visited a year ago that got themselves a nice ransomware attack), for instance on machines you can dispose off.

The mechanism has changed over time, from a simple button to a passphrase that changes every now and then.

Some historic links on this:


A way to bypass a Chrome interstitial page is to type a secret keyword. Until today, this not-no-secret keyword was “badidea”. And it just changed. So h… – François Beaufort – Google+


Read the rest of this entry »

Posted in Chrome, Google, Power User | Leave a Comment »

xs:choice element to C# – Google Search

Posted by jpluimers on 2018/01/10

Some links via xs:choice element to C# – Google Search.

I need them one day to better understand xsd:choice mapping to C# for both XSD and WSDL usage.

I have the feeling that the WSDL and XSD importer are trying to be smart, so for instance when you have multiple choices that come down to a common basic type like a derivation from xsd:string, it makes to two properties: a C# enumeration to select the type and a C# string value for the content referencing the enumeration through a XmlChoiceIdentifierAttribute.


Posted in .NET, C#, Development, Software Development | Leave a Comment »

Delphi: playing Chimes.wav as an external file or embedded WAVE resource in Delphi XE5.

Posted by jpluimers on 2018/01/10

As a by-effect, this article seems to one of the few that shows where Delphi uses the .dres file extension introduced around Delphi XE.

Recently I had to play some notification sounds in a Windows Delphi application where the application deployment should be as easy as possible: preferable copying the EXE around.

Playing a sound file seems easy, especially if it is a [WayBackWAV file: just use the [WayBack] PlaySound or the (older) [WayBack] sndPlaySound API functions.

But if you start searching on the internet, you see lots of curious implementations for playing WAV resources through sndPlaySound.

The actual implementation is really really easy though, just make sure you follow the steps right and nothing can go wrong.

[WayBack] The full source code is on my repository, here is how to to it step by step:

The steps depend on the MMSystem unit, so most of the code translates back to [WayBack] Turbo Pascal for Windows (yes, the 16-bit Pascal days when the MMSystem unit was introduced) with the exception of the SND_SENTRY flag.

The thing that more recent Delphi versions made a lot easier is embedding WAV files as WAVE resources, more on that further on. Read the rest of this entry »

Posted in Borland Pascal, Delphi, Delphi 2, Delphi 2005, Delphi 2006, Delphi 2007, Delphi 2009, Delphi 2010, Delphi 3, Delphi 4, Delphi 5, Delphi 6, Delphi 7, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Development, Pascal, Software Development, Turbo Pascal | Leave a Comment »

Damned ! var Comp : function(const s1, s2: string): Boolean; begin if CheckB…

Posted by jpluimers on 2018/01/10

One of my main gripes about lots of RTL/VCL/FMX code: conventions are often lacking.

Which means one of the below functions starts with Ansi (but does a Unicode operation) and the other has the parameters in reverse.

  Comp: function(const s1, s2: string): Boolean;
    if CheckBox1.Checked then 
      Comp := ContainsText 
      Comp := AnsiStartsText;


source: [WayBackDamned ! var Comp : function(const s1, s2: string): Boolean; begin if CheckB… – Paul TOTH +

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

Autoregister attribute for Delphi | Jon L. Aasenden

Posted by jpluimers on 2018/01/10

Interesting idea:

[WayBack] Wouldn’t it be nice if Delphi has an attribute that automatically registers your class for you? – Lennart Aasenden – Google+

Source at [WayBackAutoregister attribute for Delphi | Jon L. Aasenden


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

%d bloggers like this: