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,860 other subscribers

Archive for the ‘Windows Development’ Category

Exceptions and DLL in Delphi – Stack Overflow

Posted by jpluimers on 2025/05/20

Every once in a while I discover an answer I have not yet put on my blog, especially as related answer are always interesting.

This is one that didn’t make it until now: [Wayback/Archive] Exceptions and DLL in Delphi – Stack Overflow (thanks [Wayback/Archive] jpfollenius, [Wayback/Archive] Deltics and [Wayback/Archive] Lars Truijens)

Read the rest of this entry »

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

VSoft Technologies – Vincent Parrett on “Code Signing with USB Tokens”

Posted by jpluimers on 2025/04/17

It has been quite a while since I had to do code signing, but sooner or later that will change. When that happens, I need to re-read these:

--jeroen

PS:

  1. [Wayback/Archive] Post by @guidoleenders.emp.invantive.com — Bluesky (by running this in the cloud)
  2. [Wayback/Archive] Post by @guidoleenders.emp.invantive.com — Bluesky )by running this on a Raspberry Pi)

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

Windows Installer is transactional, but combined with NTFS and installer processes is not fully: do more C:\Config.msi vulnerabilities exist? (plus a truckload of information on Windows SIDs)

Posted by jpluimers on 2025/04/10

Over the last years a few C:\Windows.msi vulnerabilities have been discovered (and fixed), of which some are linked below.

The core is that the Windows Installer tries to be transactional, and NTFS is, but the combination with installer processes isn’t.

That leads into vulnerabilities where you can insert malicious Roll Back Scripts (.rbs files) and Roll Back Files (.rbf files), and I wonder if by now more have been discovered.

So this post is a kind of reminder to myself (:

Oh, and I learned much more about whoami on Windows, as there  whoami /groups shows very detailed SID information. From that, I learned more on the internals of SIDs too!

Read the rest of this entry »

Posted in Blue team, C++, Development, Power User, Red team, Security, Software Development, Visual Studio C++, Windows, Windows Development | Tagged: , , , | Leave a Comment »

From Turbo Pascal to Delphi to C# to TypeScript, an interview with PL legend Anders Hejlsberg – YouTube

Posted by jpluimers on 2025/04/09

Nice historic perspective: [Wayback/Archive] From Turbo Pascal to Delphi to C# to TypeScript, an interview with PL legend Anders Hejlsberg – YouTube

Via [Wayback/Archive] Zack Urlocker on Twitter: “Great interview with @ahejlsberg on the evolution of programming languages, the rise of TypeScript and more. Anders is one of the best programmers I ever worked with. …”

--jeroen

Posted in .NET, Borland Pascal, C#, Delphi, Development, History, JavaScript/ECMAScript, MS-DOS, Pascal, Scripting, Software Development, Turbo Pascal, TypeScript, Windows Development | Leave a Comment »

Installing Chocolatey on Windows 10 and up

Posted by jpluimers on 2025/04/02

Steps for installing Chocolatey on Windows 11 and up or 10 version 1803 and up.

Since I often install Windows on machines where it is not easy to copy/paste longer install commands my steps are slightly different than the ones on [Wayback/Archive] Chocolatey Software | Installing Chocolatey:

  1. Start a regular command prompt
  2. Either these two (the options are equivalent, see [Wayback/Archive] curl: transfer a URL | curl Commands | Man Pages | ManKier for --remote-name and -O):
    • curl --remote-name https://community.chocolatey.org/install.ps1
    • curl -O https://community.chocolatey.org/install.ps1

    Note the cURL pre-installed on Windows 10 since at least 6 years*: release 1803 or insider build 17063 is good enough to download the Chocolatey install script

  3. Inspect the downloaded install.ps1 to check if you spot anything you dislike
  4. Start an elevated (administrator) command prompt
  5. Start PowerShell
  6. Execute this command
    • Set-ExecutionPolicy Bypass -Scope Process -Force
  7. Execute this command in the folder where you downloaded install.ps1
    • .\install.ps1
  • Yup, a custom build of cURL has been pre-installed on Windows 10 and up since more than 6 years:

Read the rest of this entry »

Posted in *nix, *nix-tools, Chocolatey, cURL, Development, Power User, Software Development, Windows, Windows 10, Windows 11, Windows Development | Leave a Comment »

Going Native – Malicious Native Applications

Posted by jpluimers on 2025/02/25

On the reading list wondering which tool chains can deliver NtAPI based development: [Wayback/Archive] Going Native – Malicious Native Applications

Via [Wayback/Archive] Thread by @MrPc69257431 on Thread Reader App with first tweet at

https://x.com/MrPc69257431/status/1864855379651498292

Note that being able to call NtAPI from your code base does not mean NtAPI based development: Pure NtAPI means you need a linker that can target a different output. See the quote from the above article (emphasis mine):

So, to get started with an empty native executable, all we have to do is include the “phnt.h” file, and set up the NtProcessStartup function. Then it’s important to tell the linker that we want to link against ntdll, and that we’ll be making a native application by passing in the “Native” text to the Subsystem linker option

It means that for instance Delphi is kind of out of the question for this, see these links on why:

Read the rest of this entry »

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

GitHub – Sanakan8472/copy-dialog-lunar-lander: Play lunar lander in you windows file copy dialog

Posted by jpluimers on 2025/02/25

[Wayback/Archive] Sanakan8472/copy-dialog-lunar-lander: Play lunar lander in you windows file copy dialog

Hard

Via:

--jeroen

Read the rest of this entry »

Posted in .NET, C#, Development, Power User, Software Development, Uncategorized, Windows, Windows 10, Windows 11, Windows Development | Leave a Comment »

Code52/carnac: A utility to give some insight into how you use your keyboard (on Windows systems)

Posted by jpluimers on 2025/02/18

I unconsciously wanted a tool like this for a long time, and was glad I finally searched for it:

A keyboard logging and presentation utility for presentations, screencasts, and to help you become a better keyboard user.

[Wayback/Archive] Code52/carnac: A utility to give some insight into how you use your keyboard

The first time I saw something similar was in the Delphi days where it was part of a plugin for CodeRush in Delphi (think Delphi 5-6 era), the famous developer productivity tool by Mark Miller that later got rewritten for Visual Studio and became part of DevExpress.

So I searched for [Wayback/Archive] windows show keystrokes – Google Search which found [Wayback/Archive] How to show keystrokes on Windows 10 which in turn mentioned a fork of Carnac.

As it turns out Read the rest of this entry »

Posted in .NET, Delphi, Development, Hardware, Keyboards and Keyboard Shortcuts, KVM keyboard/video/mouse, Power User, Software Development, Windows, Windows Development | Leave a Comment »

Raymond Chen on The AArch64 processor (aka arm64) in many parts

Posted by jpluimers on 2025/01/14

For my link archive: below a series of articles my Raymond Chen on “The AArch64 processor (aka arm64)” in the order of appearance from a few years back and still very relevant today.

It is part of a few more series on processors that (were) supported by Windows. A good reference to find which version supported which processor architecture is the tables in List of Microsoft Windows versions – Wikipedia.

Read the rest of this entry »

Posted in AArch64/arm64, ARM, Assembly Language, Development, History, MIPS R4000, PowerPC, Software Development, The Old New Thing, Windows Development, x64, x86 | Leave a Comment »

On Windows, `arp -d` sometimes fails but `netsh` comes to the rescue

Posted by jpluimers on 2025/01/08

(All below statements were run elevated as Administrator)

I had arp -d fail with any parameter combination on one of my systems always throwing the error The ARP entry deletion failed: The parameter is incorrect..

Luckily I found out that this did clear the ARP cache correctly:

netsh interface ip delete arpcache

I found that via [Wayback/Archive] “The ARP entry deletion failed: The parameter is incorrect.” – Recherche Google:

Read the rest of this entry »

Posted in Batch-Files, Development, Power User, Scripting, Software Development, Windows, Windows 10, Windows 11, Windows 7, Windows Development | Leave a Comment »