I recently discovered a cool little feature in Windows 7. I’d known about the libraries that come default, which include Documents, Music, Pictures and Videos. I thought that it was a nice idea that these libraries looked in multiple locations. While I hadn’t had much need for it yet, I can envision my home network utilizing it once I start upgrading my home machines.
At work, I’m testing the 64-bit version of Windows 7 RTM as a developer workstation in our environment. One thing that I constantly kept doing while making sure my environment is set up correctly, is looking for an application in the C:\Program Files folder. Unfortunately, there are quite a few applications that are still 32-bit, so they get installed in C:\Program Files (x86) so I find that although I have a 50% chance to look in the right folder, I get it wrong about 90% of the time. Wouldn’t it be great if there was a library that included both! I decided to try it.
Right clicking in a blank spot in my libraries window gave me a New –> Library option. Cool! After giving my library a name (Programs) I found there was nothing inside, I went back and right clicked on my new library and chose Properties. I was presented with a dialog that let me change a few things, such as adding folders the library should look into. I added my two Program Files locations, closed the dialog, opened the library and viola! There are all of my programs! Very cool!
One thing I will briefly note, if this library is for a type of files that you will be actually saving files into, you can select the folder that acts as the default location to save files. That way when you are in an application and you choose to save something, you can just click on the library and it will save in the default folder. That’s not something you’re likely to do with programs, but there are other file types. Another library I have added, for example, is Source Code.
They only thing that was disappointing at this point, was the fact that there was no option to assign a custom icon. I did a quick search on Bing (I did a quick Google on Bing?) and found this guide regarding custom libraries. It explained that libraries are really just XML files located in the special folder at C:\Users\<User>\AppData\Roaming\Microsoft\Windows\Libraries with some data describing the library. One of the elements you an add to the library is called <iconReference></iconReference> which simply takes a path to an .ico files. It does note that for the best results a 256×256 icon should be used, or an icon with appropriate sizes all in one file; however, I found one at 128×128 for my programs and it worked fine.