The Old New Thing
Practical development throughout the evolution of Windows.
Latest posts
What’s up with window message 0x0091? We’re getting it with unexpected parameters
Trespassing on system messages.
Why is there a long delay between a thread exiting and the WaitForSingleObject returning?
Maybe it didn't really exit.
Why was there a red telephone at every receptionist desk?
Not a direct line to Bill Gates's office.
Finding a duplicated item in an array of N integers in the range 1 to N − 1
Taking advantage of special characteristics of the array.
How do you add or remove a handle from an active WaitForMultipleObjects?, part 2
Waiting for the waiting thread to acknowledge the change.
How do you add or remove a handle from an active WaitForMultipleObjects?
You can't, but you can cooperate with the other thread.
How do you add or remove a handle from an active MsgWaitForMultipleObjects?
You can't, but you can arrange for the waiter to do it for you.
Were there any Windows 3.1 programs that were so incompatible with Windows 95 that there was no point trying to patch them?
The permanently ineligible list.
Learning to read C++ compiler errors: Illegal use of -> when there is no -> in sight
If the compiler is complaining about things you didn't write, find out who wrote them.