Some notes about the blog migration
I’ve opened a number of tickets with the blog migration team. Some of the issues have been fixed. The most significant remaining one is that many redirects from the old site are still broken. In...
View ArticleWhat makes XCOPY so X?
There’s COPY and there’s XCOPY. First things first: I don’t know what the X stands for. Extra? Exorbitant? Excellent? My guess is Extended, but it’s just a guess. The built-in MS-DOS COPY command...
View ArticleSo how bad is it that I’m calling RegOpenKey instead of RegOpenKeyEx?
A customer had some code that called the RegOpenKey function and was concerned by the remark in MSDN: Note This function is provided only for compatibility with 16-bit versions of Windows....
View ArticleWhat does the /V (verify) flag to XCOPY mean, and how did it get that way?
The XCOPY command has a flag called /V, which stands for verify. Sort of. /V Verifies the size of each new file. First, the easy question: What does this flag do? Answer: If this flag is set, then...
View ArticleIf I’m going to store a SID in a file, should I store the string form or the...
A customer needed to save some user SIDs into a file and wanted guidance on whether to use string format or binary format. Here are some pros and cons. String format: To save the SID, use the...
View ArticleHow can I tell whether my console program was launched from Explorer or from...
So you have a console program. This console program could be run by typing its name at the command prompt, or it could be run by the user double-clicking it from Explorer. And you want to know which...
View ArticleSome senior executives are afraid to provide feedback, because they know that...
I recall a conversation I had with Steve Sinofsky, back when he was in charge of Windows. As you might expect, he gets to see early versions of a lot of things, his laptop is running dogfood...
View ArticleWhy does CryptDestroyHash crash, but only sometimes?
A customer was having a problem with the cryptographic hashing functions. They reported that their function ran successfully most of the time, but once in a while, it crashed at the call to...
View ArticleWhy is getting the HP_HASHSIZE so weird?
A comment on the documentation page for CryptGetHashParam notes that the “obvious” way to get the HP_HASHSIZE is incorrect. // Version 1: wrong. DWORD size = 0; if (CryptGetHashParam(hash,...
View ArticleDoes the thread pool have different handle access privileges? Why am I...
A customer was observing strange behavior in their application with handles and the thread pool. We have a service that spawns a child process, and under certain conditions, we need to terminate that...
View Article
More Pages to Explore .....