Why do my file creation, access, or modified time disappear if I set it to...
A customer discovered that if their program used the SetFileTime function to set a network file's creation, access, or modified time to the specific value of "midnight on January 1, 1980", then the...
View ArticleZeroing out my memory does cause them to page in faster after all
Not too long ago, I answered the question "If I zero out my memory pages, does that make them page in faster?" with "No." Turns out that I was working from outdated information. My former colleague...
View ArticleUnder what circumstances will GetProcessTimes report that a process exited...
A customer reported that their automation started reporting strange values: HANDLE process = ...; FILETIME creation, exit, kernel, user; if (GetProcessTimes(process, &creation, &exit,...
View ArticleIf you don’t blow up a debug session every so often, you’re not debugging...
I was helping a customer live-debug an assertion failure in an automated test running in a lab. I messed up an attempt to unwind the stack to restart a call and ended up corrupting the process state....
View ArticleThe long-awaited Redmond Costco opens today, and some useless Costco trivia
Assuming there isn't another schedule slip, the Redmond Costco should be opening today. So I'm going to celebrate by sharing some Costco trivia. If you shop three times in a row at a particular Costco...
View ArticleWhat does the shield over a WiFi network mean?
Windows 10 has a new icon in the networking flyout: Fred's WiFi Open It's a WiFi network with a shield and an exclamation point. What does this mean? It means that the network is not secure. What does...
View ArticleThe speed of light is unlikely to improve: consequences
In the process of designing a way for a game to obtain the the ping time to a game server, the question arose as to what units the ping time should be expressed in. The original idea was to express...
View ArticleWhen you decide to travel at the speed of light, you have to accept the...
One of the challenges of developing Windows 8 for ARM devices is that, well, for a long time, there were no Windows ARM devices to test on, which made it more difficult to verify that the designs were...
View ArticleIs RunAsInvoker a secret, even higher UAC setting?
The comments in this oldnewthing article reveal a secret, even higher UAC setting: RunAsInvoker https://t.co/tTajZx6FlR — Vincent Povirk (@madewokherd) August 18, 2016 Actually, RunAsInvoker is a...
View ArticleWhy does calling SetForegroundWindow immediately followed by...
A customer said that their program used FindWindow to find a window in the system, then called SetForegroundWindow to set that window to the foreground. The call succeeds, but if they enumerate the...
View ArticleLock free many-producer/single-consumer patterns: A work queue with task...
Today we're going to implement a very simple producer/consumer pattern: There are many producers who are producing work, and a single consumer who processes the work. The work is all identical, and it...
View ArticleLock free many-producer/single-consumer patterns: A work queue where the last...
Continuing our miniseries on lock-free many-producer/single-consumer patterns, we're going to look at the case where you have a work queue where there can be multiple work items, but each work item...
View ArticleLock free many-producer/single-consumer patterns: A work queue of identical...
Onward with our miniseries on lock-free many-producer/single-consumer patterns. Today, we're going to look at the case where you have a work queue where there can be multiple work items, and you need...
View ArticleLock free many-producer/single-consumer patterns: A work queue of distinct...
Almost done with our miniseries on lock-free many-producer/single-consumer patterns. Today, we'll look at the case of multiple producers generating distinct work items which cannot be coalesced, but...
View ArticleTurkeys Away: An Oral History
Here's some fun reading that keep you occupied while you recover from your post-feast coma:¹ Turkeys Away: An Oral History, the story behind the most famous sitcom Thanksgiving Day episode. Here's the...
View ArticleLock free many-producer/single-consumer patterns: A work queue of distinct...
At last, our long national nightmare is over: The end of the miniseries on lock-free many-producer/single-consumer patterns. We'll finish up with the case where there are many producers generating...
View ArticleThe Gävle Goat is now 50 years old
In 1966, the Swedish town of Gävle started the tradition of erecting a giant goat made of straw for the Christmas holiday season, and it continues to be the leading example of same. This sounds weird...
View ArticleIf I simply want to create a registry key but don’t intend to do anything...
A customer wanted to create a registry key if it didn't already exist, but they weren't interested in writing anything to the key yet. They just wanted to ensure that it existed. Now, we know that the...
View ArticleThe case of the volume label that doesn’t change
A customer liaison forwarded a problem from their customer: When the customer changed the volume label on a drive, the change is not reflected in Explorer. Explorer continues to show the old volume...
View ArticleWhat could be happening in Safe Mode to make my heap corruption bug go away?
A customer had a program that encountered heap corruption bugs, and they found that the bugs didn't occur when the system was running Safe Mode. What is so special about Safe Mode that makes the bug...
View Article