Thursday, July 24, 2008

Learn Something New, July 24 2008 Edition

Suppose you want to know who installed a program on a Windows server?

Enter the registry, and navigate to HKLM\Software\Microsoft\Windows\CurrentVersion\Installer\UserData. You'll find branches for each user that has installed anything on the server, identified by SID. Within the branches you'll see a 'Products' branch.

Expand the Products branch, and every product that user has installed is listed, by GUID.

You're probably reading this thinking to yourself that you don't care about the SIDs and GUIDs, those don't help you at all! True, but keep reading.

Now, if you expand the Product branches, and then click on 'InstallProperties' for each one, you'll see details of the installation. One of those details is the 'DisplayName'. The Display Name describes the program that was installed. You can now, obviously, go through the list and find a particular program you're interested in. Once you've found the program, you can look at the UserData branch that contains the installed program branch, and this will give you the SID of the user that did the install.

NOW, scoot over to HKLM\Software\Microsoft\Windows NT\CurrentVersion\ProfileList. This branch lists SIDS for each user that has a profile on the system. (Effectively, any user that has ever logged on to that machine.)

Each SID contains details that describe it, including a key labelled 'ProfileImagePath'. This points to the Documents and Settings folder for that user. These are almost always named according to the user, so if the folder is called
jsmith, then that profile is likely JSmith's profile.

Be aware that if the user has a local profile as well as a domain profile, there
will likely be two similar paths in Documents and Settings - i.e. jsmith, and
also jsmith.domainname.

Wednesday, July 16, 2008

A symptom of Parent-itis

A couple of weeks ago our family made a trek to Chicago to visit Jessica's sister and her family. It gave us a chance to hang out with my sister/brother-in-law and their new son, Ian. While gas was costly, the total expenses were a fraction of what it would have cost the four of us to fly.

While in the area, we spent a day at Kiddieland, an amusement park. This amusement park paled when compared to Disney World, but standing on it's own it was fine, and we all had a fun time. I don't really remember Pontchartrain Beach, but I imagine Kiddieland must have been similar.

I've always been ambivalent about thrill rides like rollercoasters. On the one hand, I'm usually terrified of and by them. On the other hand, when I manage to force myself to ride one, I find them thrilling, and want to get right back in line to ride again.

The rides at KL were very tame, intended for the pre-teen set. But I was as scared as I've ever been on the rides. Even the Ferris Wheel was frightening. I wasn't scared so much for myself, as I was that something would happen to my kids. Mainly, I feared that they would fall through the safety bars, given their small size, and plummet to their deaths.

And this fear wasn't exhilirating, and I didn't want to go right back for another ride.

BUT, I suppressed my fear and let Nate ride some of the rides repeatedly, most notably the 'Galleon', a ride where a pirate-ship pivoted around a center beam like a swingset-swing, rising at each end of the arc until Nate was nearly horizontal, looking down at the ground from a couple of stories up in the air.

I suppose this either makes me a good parent, letting my little birdy fly, or it makes me a terrible parent, not protecting my kid adequately. Hmmmm......