The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

Aug 1, 2024
Post comments count 2
Post likes count 1

What’s the difference between Data­Package­View.Get­Uri­Async and Data­Package­View.Get­Web­Link­Async?

Raymond Chen

Just improving on an ambiguous name.

Jul 31, 2024
Post comments count 1
Post likes count 3

How to compress out interior padding in a std::pair and why you don’t want to

Raymond Chen

Context-sensitive layout means you get a different structure each time you use it.

Jul 30, 2024
Post comments count 8
Post likes count 5

There is no mystery over who wrote the Blue Screen of Death, despite what some may want you to believe

Raymond Chen

No real contradictions in anybody's story.

Jul 29, 2024
Post comments count 1
Post likes count 1

Why don’t Windows Imaging Component pixel format GUIDs continue their nice pattern?

Raymond Chen

Patterns are predictable, which is not always a good thing.

Jul 26, 2024
Post comments count 2
Post likes count 2

What can I do if IMlangConvertCharset is unable to convert from code page 28591 directly to UTF-8?

Raymond Chen

You can do the conversion in two steps using things you already have.

Jul 25, 2024
Post comments count 0
Post likes count 2

In my Visual Studio project, I set my Conformance mode to permissive, but it’s still not permissive

Raymond Chen

Digging into what the compiler sees.

Jul 24, 2024
Post comments count 7
Post likes count 1

API naming principle: If there is no direct object, then the direct object is the source object

Raymond Chen

If you don't know what it operates on or produces, then it operates on or produces itself.

Jul 23, 2024
Post comments count 11
Post likes count 3

Unquoted service paths: The new frontier in script kiddie security vulnerability reports

Raymond Chen

Usually not exploitable, but the script kiddies don't know that.

Jul 22, 2024
Post comments count 9
Post likes count 5

Organizing the five creation dispositions of the Create­File function

Raymond Chen

Six possibilities, but only five useful ones.