WinDays 10

Illustration

Biggest Croatian IT conference WinDays will be held in Rovinj this year. And, as two previous years, yours truly will have one presentation.

This year I will be talking about Bing Maps and presentation will be held on Wednesday, 21st April 2010 at 11:00. If you, readers of this blog, happen to be in Rovinj that day (or day before/after) I would like to meet you in person.

As always, presentation will be available for download minutes after I stop bothering attendants.

Am I Secret Admirer?

Illustration

Most of my YouTube playlist consists of Starcraft and cooking videos. From time to time I also take look at YouTube recommendations since they usually reflect my taste. But sometimes I just have a laugh.

I was quite surprised when I saw Susan Boyle video among those recommended for me. Fortunately YouTube also told me why. That left me even more puzzled since YouTube though that I would like Susan because I watched Starcraft Winners League match between Samsung Khan and Estro. I dare not think how many Starcraft fans watched both those videos for YouTube to connect them.

Starcraft fans are peculiar bunch…

Alternate Data Streams

NTFS has quite a few features that are hidden from everyday user. One of features that is difficult to access is alternate data streams.

Additionally to normal content, each file can have additional content attached to it. That content is, for all practical purposes, independent of original file content and it can contain anything. Most common stream is “Zone.Identifier”. It gets added by Internet Explorer (and some other browsers) to each executable to mark it as “unsafe”. Before such file gets executed you get security warning with notification that file arrived from big-bad-Internet.

Unfortunately this is as far as using this feature goes in Windows. Although one could think of thousands of more uses for it (e.g. adding thumbnails to file itself instead of separate file) its downfall is support on other file systems. Mere act of copying file to FAT partition will strip additional file streams. Mailing it is out of question and not even HTTP has any provisioning for it. With all that in mind, it is very unlikely that it gets used for anything more than temporary data.

If you are C# programmer and you have purpose for ADS, you will stumble upon another problem - it has no support in .NET framework. This is where this post gets useful.

I decided to implement support for alternate data streams in FileStream-like class that allows for same read/write functions to be used as in any Stream. It just wraps native CreateFile function into some FileStream contructor overloads. For deletion of particular stream within file we can use native DeleteFile and stream-specific functions (FindFirstStream and FindNextStream) will take care of enumeration.

I will let source code speak for itself.

Startup Customizations

Illustration

My BeBook e-book reader is just rebranded Jinke and as such there is quite a lot possibility of customization. I will save discussing all different versions of firmware for some other post, this time I will just discuss changing logo.

Jinke decided to make it’s LogoMaker available for all owners to change both boot and shutdown images.

Preparing is easy. Just create two bitmaps (one for boot and one for shutdown) and save them as .bmp images. Start LogoMaker and give path to those two images just created and you will get logo.bin and logo.md5. Those two files are all you need.

Create /jinke/logo on SD card. Easiest way is to do this is to connect BeBook mini (or Hanlin V5, or Pocket PRO, or whatever clone there is) to USB and copy it from there, but choice is yours.

Once both SD card and logo files are in place you can go into Settings. There you will see “Update boot and shutdown logo” option available. Once selected, update will happen very fast and device will be turned off.

Once you turn device back on you will be able to enjoy your new startup screen.

Probably most difficult thing is selecting proper logo for it. I decided upon “Don’t Panic” statement. If you wish it, you can have it too.

What Else I Didn't Notice?

I accidentally did click’n’drag on tray notification are in Windows 7. I was quite surprised when icon actually moved.

Yes, Windows 7 allows notification icons to be moved around. And to make it better all icons will stick to that place - no matter in which order you start applications that create them.

I wonder what else I don’t know about Windows 7… I should probably start reading manuals. :)