Reinstall ChromeMailer after upgrading Windows Reinstall ChromeMailer after upgrading Windows

February 1st, 2010

If you have upgraded your Windows installation or deleted the MSI Installer cache under %windir%\Installer, you will not be able to remove or upgrade ChromeMailer.

To do so, you need to download the Windows Installer Cleanup Utility from Microsoft, and deselect the previously installed ChromeMailer instance from the list.

Silverlight2 error: ‘the property visualtree is defined more than once’ Silverlight2 error: ‘the property visualtree is defined more than once’

June 10th, 2009

From the missing MSDN pages: this error means that you’ve added more than one element to a FrameworkTemplate (like in a DataTemplate). First, add a Container - for example a  StackPanel.

The Daily SQL Server 2005 Entertainment Column: Reporting Services FAIL The Daily SQL Server 2005 Entertainment Column: Reporting Services FAIL

March 28th, 2009

Today is not my day - working with standard database management functions gives me more application errors as if I were typing blindfolded in Visual Studio and pressing F5 :D

Today’s second googlely-clickitry-click-hotfix-install stopper was a lovely error, when I tried to get a Table usage Report from a database:

System.Xml: Object reference not set to an instance of an object.

Nice! Impressive! Informative! :D

Of course it was reported before, and a hotfix is avaliable, so I’m just writing for the magnificent MS mailservers to handle me the download link… well it lasts for 15 minutes now (I’ve checked the spam folder…:) )

The Daily SQL Server 2005 Entertainment Column: Network Backups FAIL The Daily SQL Server 2005 Entertainment Column: Network Backups FAIL

March 28th, 2009

I got a backup of a database from a client, and I wanted to restore over a newly created database. When I selected the file, the Management Studio went berzerk:

Cannot open backup device ‘C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\backup.bak’. Operating system error 5(error not found).
RESTORE HEADERONLY is terminating abnormally. (Microsoft SQL Server, Error: 3201)

This is a true WTF heart stopper, I thought that all the backups were invalid since we’re running the site :D

Afterwards it turned out that the client backs up the database files to a networks share, so magically somehow the permissions has been altered for a local restore. According to this hint by Stevied, I added the Network Service user as an owner, and voila: all functionality magically returned… :)

Joomla Search: undefined method SearchHelper::checknohtml() Joomla Search: undefined method SearchHelper::checknohtml()

March 24th, 2009

I’ve recreated a website for my friend using the Joomla portal-framework, the successor of the late Mamboo portal-engine. I personally think it is a bit over-rated, not an easy-to-use system at all.

One huge error I found with the 1.5 install: the search got mixed up somehow, and it failed with the following error message:

Fatal error: Call to undefined method SearchHelper::checknohtml() in /plugins/search/content.php on line 254

..and of course there were no checknohtml() functions in any of the directories.

So i’ve downloaded the last stable version, and found out that originally, this function must live in the ~/administrator/components/com_search/helpers/search.php file. So i’ve just copied over the old file, and voila: it’s working.

Gmail & Windows Mail: “This could, for example indicate a lack of memory on your system” Gmail & Windows Mail: “This could, for example indicate a lack of memory on your system”

March 5th, 2009

For some unknown reasons, using Google Mail or Google Mail for your domain with Windows (Live) Mail is a configuration hell. However, as I’m the proud author of ChromeMailer, on some occasions I need to use a real mailer program, for example sending multiple files (which was a true pain in the ass with the web based Gmail since last week), or sending Html mails with inline images.

If you set up your Gmail account according to Gmail Help, it will simply not work, Windows Mail will keep you entertained with silly error messages like  “This could, for example indicate a lack of memory on your system” and other nonsense error messages.

The only working setting is the following:

1) Your IMAP server is imap.googlemail.com not imap.gmail.com (and pop.googlemail.com instead of pop.googlemail.com)

2) Your SMTP server’s port is 587, not 564.

3) Under the IMAP tab, you should uncheck “Store special folders on IMAP server”

Now you can re-sych your accont, and finally you are able to check your emails :)

Wordle - what am I really into Wordle - what am I really into

January 22nd, 2009

wordle diagram

well, it’s a fine conclusion of the last 4 years here on blog.skaelede.hu :)

Change Windows Photo Gallery’s Full Screen Sideshow resolution for Intel GMA Change Windows Photo Gallery’s Full Screen Sideshow resolution for Intel GMA

January 12th, 2009

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 1024×768 (I’m using a 19″ LCD with 1440×900 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! :)

Download remote images with Wget Download remote images with Wget

January 8th, 2009

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/file.name

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.

Fancy up Asp.Net DynamicData controls Fancy up Asp.Net DynamicData controls

January 7th, 2009

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:

<a href="<%# GetChildrenPath() %>" runat="server" id="ViewLink">view 
<img src="/img/modify.png" alt="insert" title="insert" style="border:0;" width="16"/>
</a>
 
<a href="<%# ChildrenColumn.GetChildrenPath(System.Web.DynamicData.PageAction.Insert, Row) %>" 
runat="server" id="InsertLink">insert 
<img src="/img/add.png" alt="insert" title="insert" style="border:0;" width="16" />
</a>

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 :)