The Old New Thing

Practical development throughout the evolution of Windows.

Latest posts

Aug 7, 2026
Post comments count 0
Post likes count 2

Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 5

Raymond Chen

Cheating with <CODE>std::unique_ptr</CODE>.

Aug 6, 2026
Post comments count 0
Post likes count 2

Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 4

Raymond Chen

Moving things around if possible.

Aug 5, 2026
Post comments count 4
Post likes count 2

Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 3

Raymond Chen

Forcing an object into the global interface table.

Aug 4, 2026
Post comments count 2
Post likes count 2

Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 2

Raymond Chen

Using a reference stored in the global interface table.

Aug 3, 2026
Post comments count 2
Post likes count 2

Creating a fake agile wrapper that is technically agile but is not useful outside its home apartment, part 1

Raymond Chen

Looking for a COM reference that is between strong and weak.

Jul 31, 2026
Post comments count 1
Post likes count 2

Making an agile version of a Windows Runtime delegate in C++/WinRT, part 10

Raymond Chen

What failure of the context callback means.

Jul 30, 2026
Post comments count 1
Post likes count 2

Making an agile version of a Windows Runtime delegate in C++/WinRT, part 9

Raymond Chen

Maybe it doesn't matter.

Jul 29, 2026
Post comments count 5
Post likes count 2

Making an agile version of a Windows Runtime delegate in C++/WinRT, part 8

Raymond Chen

Exceptions hiding in lambda captures.

Jul 28, 2026
Post comments count 3
Post likes count 2

Making an agile version of a Windows Runtime delegate in C++/WinRT, part 7

Raymond Chen

Further explorations into exception safety.