.NET 2.0 (Beta 2) Experiences
A windows programmer plays with .NET 2.0 Beta 2 just to find the things he needs missing.
This entry was first published on April 30, 2005, 01:54 AM, CET and categorized as Code, Rant.
So far, no comments have been added to this entry. You can add your thoughts to the discussion below.
While watching Bill Gate's WinHEC 2005 keynote I notice the Longhorn start menus find thingy and I wondered how this would work out. So I decided to do a little test application in VC++ 2005 Beta 2 as I knew that getting the relevant programs directories and its associated icons is a no brainer in the Win32 API (well, actually it's Shell stuff but still easy). I was so wrong…
The first problem I encountered was the lack of Environment::SpecialFolder::CommonPrograms. I don't know why that enumeration is only a subset of the supported CSIDL by SHGetFolderLocation and friends. My initial theory about the selection of supported values was soon proofed to be wrong as the enumeration includes other NT only values. The same happened to my 2nd guess: a few of the missing CSIDL's do return a real path…
Next problem in line was access to the systems (or Explorers) image lists: Icon::ExtractAssociatedIcon is no real alternative for these image lists as SHGetFileInfo (or Shell_GetImageLists) provide an easy way to access the icons for all items, including directories. So, after some P/Invoke voodoo I got my hands on the systems HIMAGELISTs. But how to get a System::Windows::Forms::ImageList instance from them? This resolved the mystery why google did not reveal any sample for SHGetFileInfo and image lists though. My current workaround (or rather hack) is some more P/Invoke with ImageList_GetImageCount, ImageList_GetIcon and ImageList::Images::Add…
And I really hope that the MSDN Express Editions search will get better: getting 500 (mostly unrelated) results for a pretty narrow search phrase (e.g. imagelist from handle returns 247 results with nothing related to image lists in the first 20) is not really helpful. Not to mention the lack of a no filter and the present of uninstalled Express Edition filters or the buried/not available feature to specify own filters and which help collections to use or that the viewer application does not save the currently selected filter across sessions.
…and now for something completely different: Thanks to Making the iPod's shuffle function work better (works great with iTune's Party Shuffle) I rediscovered the genius work of Django Reinhardt: Improvisation and Minor Swing are pure breath-taking master pieces of guitar play. So, if you like swinging Jazz, get your hands on a copy of Essential Django Reinhardt — no, just get it :]
Comments
No comments made yet. Will you be the first?