Larry Osterman's WebLog
Just another Developer Network site
Converting Win32 API results to std::wstring (or std::string)
Hmm. Just realized that this is a bit out of order and should have been published before the...
Date: 11/24/2015
ExpandEnvironmentStringsA returns a different required buffer length than ExpandEnvironmentStringsW
I was writing some ANSI-only code the other day to handle the case where an environment string...
Date: 11/19/2015
PathCchCanonicalizeEx doesn’t actually canonicalize filenames (AKA: Hey Larry, it helps to RTFM).
So I was working on some file path parsing logic the other day and I ran into a problem – I was...
Date: 11/17/2015
Recursively Deleting a directory–with long filename support.
I recently was updating some test code to handle long filename (longer than MAX_PATH) support. My...
Date: 11/16/2015
What’s wrong with this code–a real world example
I was working on a new feature earlier today and I discovered that while the code worked just fine...
Date: 11/28/2012
Insecure vs. Unsecured
A high school classmate of mine recently posted on Facebook: Message just popped up up my screen...
Date: 11/06/2011
Read-Only and Write-Only computer languages
A colleague and I were chatting the other day and we were talking about STL implementations (in the...
Date: 09/27/2011
What has Larry been doing for two years (and why has the blog been dark for so long)?
As many of you may know, I tend to blog about things I encounter in my day-to-day work that I think...
Date: 09/16/2011
Getting started with test driven development
I'm at the build conference in Anaheim this week, and I was in the platform booth when a customer...
Date: 09/15/2011
Nobody ever reads the event logs…
In my last post, I mentioned that someone was complaining about the name of the bowser.sys component...
Date: 05/03/2011
Reason number 9,999,999 why you don’t ever use humorous elements in a shipping product
I just saw an email go by on one of our self hosting aliases: From: <REDACTED> Sent: Saturday,...
Date: 05/02/2011
How do people keep coming up with this stuff (mspaint as an audio track).
The imagination of people on the internet continues to astound me. Todays example: Someone took...
Date: 03/09/2011
Someone is a glutton for punishment
From Long Zheng, a video of someone who decided to upgrade every version of Windows from Windows 1.0...
Date: 03/02/2011
The case of the inconsistent right shift results…
One of our testers just filed a bug against something I’m working on. They reported that if...
Date: 02/11/2011
Why does Windows still place so much importance on filenames?
Earlier today, Adrian Kingsley-Hughes posted a rant (his word, not mine) about the fact that Windows...
Date: 02/04/2011
Hacking Windows with Phones… I don’t get it.
Over the weekend, Engadget and CNet ran a story discussing what was described as a new and novel...
Date: 01/24/2011
It’s a bad idea to have a TEMP environment variable longer than about 130 characters
I've been working with the Win32 API for almost 20 years - literally since the very first Win32 APIs...
Date: 10/19/2010
What does “size_is” mean in an IDL file?
My boss (who has spent a really long time working on RPC) and I got into a discussion the other day...
Date: 05/26/2010
Microsoft Office team deploys botnet for security research
Even though it’s posted on April 1st, this is actually not an April Fools prank. It turns out...
Date: 04/01/2010
Not Invented Here’s take on software security
One of my favorite web comics is Not Invented Here by Bill Barnes and Paul Southworth. I started...
Date: 02/16/2010
What’s up with the Beep driver in Windows 7?
Earlier today, someone asked me why 64bit versions of windows don’t support the internal PC...
Date: 01/04/2010
Why are they called “giblets” anyway?
Five years ago, I attended one of the initial security training courses as a part of the XP SP2...
Date: 10/26/2009
Windows 7 Reflections…
Today[1] Microsoft formally launched Windows 7. I can’t say how proud I am of the work we did...
Date: 10/23/2009
Win7 Whoppers
Wow, one of my co-workers just sent this image out. It’s totally awesome (IMHO)…...
Date: 10/21/2009
Looking for new skillz (turning the blog around)…
Just for giggles, I went looking at the various job listings within Microsoft and outside Microsoft...
Date: 10/20/2009
I can make it arbitrarily fast if I don’t actually have to make it work.
Digging way back into my pre-Microsoft days, I was recently reminded of a story that I believe was...
Date: 09/29/2009
What’s the difference between GetTickCount and timeGetTime?
I’ve always believed that the most frequently used multimedia API in winmm.dll was the PlaySound...
Date: 09/02/2009
Digging into the history bin (AKA: Microsoft Developer says that Windows is useless)
As I was writing my “25 years of Larry’s history at Microsoft in 1 year chunks”...
Date: 09/01/2009
24 years ago today (1985)
Way back in 1985 I was busy working on MS-DOS 4.0. MS-DOS 4.0 was a multitasking derivative of...
Date: 08/26/2009
23 years ago today (1986)
23 years ago, I was working on finishing MS-DOS 4.0 and transitioning to work on MS-DOS 4.1. We also...
Date: 08/25/2009
20, 21 and 22 years ago (1987-1989)
Ok, at this point it should be blindingly obvious where this series is going :). In early 1987 I was...
Date: 08/24/2009
Nineteen years ago today (1990)
In 1990 I joined the WIndows NT OS/2 team after working on Lan Manager for several years. I was one...
Date: 08/21/2009
Seventeen years ago today (1992)
I was working on the NT team working on the NT browser. I was also preparing for my first major...
Date: 08/19/2009
Sixteen years ago (1993)
Sixteen years ago, we were busy finishing up Windows NT 3.1. On NT, I worked on the browser (network...
Date: 08/18/2009
Twelve, Thirteen, Fourteen and Fifteen years ago (1994-1998)
Sorry, I was off on Friday so no post. 1994 was probably the most tumultuous year of my career at...
Date: 08/17/2009
Eleven years ago today (August 1999)
Eleven years ago, I was in the Exchange group, working on Exchange 2000 (same as 10 years ago :))....
Date: 08/13/2009
Ten years ago today (August 1999)
In 1999, I was busy working on shipping Exchange 2000. Most of the work I did on E2K was related to...
Date: 08/12/2009
Elliot Omiya, Frank Yerrace and I make a video…
Charles just let me know that he’s posted a video that Elliot, Frank and I did talking about...
Date: 08/11/2009
Nine years ago today (August 2000)
The biggest event on my plate in August was that I took taken delivery of a brand spanking new...
Date: 08/11/2009
Six, Seven and Eight years ago today (August 2003, August 2002, August 2001)…
Between 2001 and 2002, I was working on the SCP project – SCP was a networking protocol that...
Date: 08/10/2009
A quick run through the new Windows 7 multimedia audio SDK samples
As I mentioned yesterday, the Windows SDK is now live. For the Windows SDK, there are 9 new...
Date: 08/07/2009
Five years ago today (August 2004)
We were busy in the “Longhorn Reset” where we essentially threw away the work we’d...
Date: 08/07/2009
The Windows 7 SDK is live!
I just received email that the new Windows 7 SDK is now live! Apparently it’s not on the...
Date: 08/06/2009