Bill Roper (billroper) wrote,
Bill Roper

We May See Murder Yet

We started working with property sets in compound document files long before the IPropertySetStorage interface was written by Microsoft. Before they'd come up with the "User-defined Property Set", for that matter. So when we needed to store a property set of our own information in the compound document, we picked a GUID and used the sample code that Microsoft had provided in order to boost our own property set into the file. And life was good.

A couple of years ago, I decided that it was high time to junk the old sample code and switch over to using the now well-defined and codified interface that Microsoft had written for property sets. I converted the property set code in our application, I converted the data read in under the old GUID that we'd grabbed so that we would in the future write it out using the defined GUID for the "User-defined Property Set", I read in old files, and they converted up just fine. And life was good.

One of our testers just tried out the app on Windows Vista. For reasons unknown to anyone, the IPropertySetStorage code that worked fine on Windows XP, that works just fine on Windows Server 2003 and 2008, fails on Vista, giving a 0x8007000d error return. That translates to "The data is invalid".

There's no documentation that suggests that Vista is doing something different in this area from all the other versions of Windows. After several hours of beating a dead Google horse, I finally found someone else who was having a different but similar problem with IPropertySetStorage and Vista.

I've now reinstated the old sample code to see if it will read our property set on Vista. If it does, then I can convert out of this mess successfully.

If it doesn't, I'm pretty much out of ideas.

And I'm really annoyed.

Update: And it works.

I'm still annoyed.
Tags: microsoft, musings, tech, work

  • The More You Know

    The problem with getting older is that -- although you may know more than you did when you were younger -- it seems like there are more and more…

  • Paying It Off

    I checked tonight and I do indeed have two more months to pay my property tax without incurring late fees. So I guess I'll be paying that later. The…

  • Jean, Jean

    I am trying to buy a new pair of jeans. Normally, this would be simple. Go to Amazon and order a pair of Levi's 560s in my size. Except that Levi has…

  • Post a new comment


    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded