development blog for the wicked stuff we encounter

I always missed the "view image in full screen" mode in my Vista installation, because out of the box it does not work with my Intel 950 video chip - when I clicked the Slide Show button it switched video mode back to something below 1024x768 (I'm using a 19" LCD with 1440x900 resolution), and created a horrible performance and huge artifacts while switching pictures.

After some goggling, I've found the Microsoft KB article id #930102, dealing with "choppy image transition" quality. At the end of the article, you can find the solution: hack the registry, and set the WinSATScore to 500, to use the native video resolution. The transitions will be painstakingly slow, but you can press the Pause button to stop it, BUT going back and forth manually does not include transitions! :)

If you want to get all images (and other fancy stuff like scripts, css) from a website (even if the files referenced in the Html source are hosted on other domains), you can do it with the following wget command:
wget -E -H -k -K -p -U "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)"  http://the.domain/
note: if you don't specify the browser type, the server possibly will think of you as a Crawler, a search engine bot, and will only serve you the robots.txt file.

I use Asp.Net DynamicData frequently, because it really speeds up development in a confortable way for some kind of projects. I'm using the DynamicData Futures July edition, and it has beautiful features like Ajax enabled DateTime UI, custom Where clauses, and Insert parameters etc. But it has some GUI design flaws: 1) the Child relations' text occupies way too much space, and makes it unreadable I've added some simple PNGs from the WebAppers Icon Set to make it more vivid for the end user. Download the icon set, and select the icons you like. The template files can be found under ~/DynamicData/FieldTemplates/ The Child relations file is named Children.aspx,  the codebehind file is Children.aspx.cs. In the Page_Load event of the codebehind, i simply commented out the name setting of the child table, because it's already in the Table header:
        protected void Page_Load(object sender, EventArgs e) {
            //HyperLink1.Text = "View " +ChildrenColumn.ChildTable.GetDisplayName();
            //InsertHyperLink.Text = "Insert " +ChildrenColumn.ChildTable.GetDisplayName();
and in the aspx file, I've added the icons, and removed the two objects referred in the aspx.cs:


Back in the codebehind file, you need to replace the reference to HyperLink1 to InsertLink:
        public override Control DataControl {
            get {
                //return HyperLink1;
                return InsertLink;
Build, and see in action: dinamicdatawithicons1 You can do it with ForeignKeys as well - I choose the Next type icon for the outer reference. 2) the GridView controls are missing the GridViewAlternateRows settings Simply do a text search for "asp:GridView", and add AlternatingRowStyle-CssClass="even" to every occurence. If you finished, create a new CSS class in ~/Site.css:
.even {
    background-color:#eeeeee !important;
    background: #eeeeee  !important;
This will work in every major browsers :)

When rolling out ChromeMailer to the people on the wild internets, some reported problems with missing mailto: handlers in registry. If ChromeMailer redirected you here, please see the steps below to repair your mailto handlers.  NOTE: YOU ARE RESPONSIBLE FOR THE CHANGES YOU MAKE IN YOUR REGISTRY! There's two ways to fix the issue:  1) Download fix_mailto.reg , (right click -> save as...) then double click it to install. It will recreate all required nodes. 2) Manually. Open Regedit (Start / Run... or in Vista type Regedit into search) click on HKEY_CLASSES_ROOT. right click on it, New > key, rename it to "mailto", then select mailto, New > key, create "shell", in shell, create "open", in open create "command", in command: New > string value .it will create a key named (Default), double click on the (Default), and enter the following: a) on Vista: C:Program FilesWindows MailWinMail.exe /mailurl:%1 b) on XP: C:Program FilesOutlook Expressmsimn.exe /mailurl:%1 This will reset the mailto: protocol handler to Windows default settings. If you now want to use ChromeMailer, simply run it, press 'Install as Default Mailer' and it will work as expected.