Check for updates: how to download and install a new version of your C# application

Posted on September 11th, 2008 in c#, programming | 1 Comment »

In one of the previous tutorials I described a simple solution that allows an application to check if a new version is available. The solution presented there has two major flaws:

  • while doing the check the main application thread is blocked, thus making the application UI not responsive to user actions
  • after finding a new version the user had to download and install it manually

A moderately skilled C# programmer should be able to solve these two problems easily. So in this tutorial we will learn how to implement our ‘check for updates’ option in a more advanced way. We will work with threads, events and delegates.

Read the rest of this entry »

How to create a simple MSI installer using WiX

Posted on August 25th, 2008 in programming | 2 Comments »

Lately I was told at work to create an installer for our new product. Till that moment I used to create exe installers with Inno Setup which has many advantages: it’s easy-to-use, powerfull and (the most important :) ) I used it so many times that creating a new installer is a matter of minutes. But this time I heard a big ‘no-no’ for an exe - it had to be msi.
I created a simple “Setup Project” in Visual Studio, played with it for a while and hoped that will work as expected. Well, it worked, but I was told it needed some customizations (graphics, custom dialogs, launching the installed application after install). After doing some googling I was able to do all those things by editing the setup project and modifying the output MSI with Orca. But because every time I needed to create that installer for the new version I had to do some things (for example in Orca) manually - I really hated this solution. So I used google again and I found a really cool, freeware toolset called WiX which does everything I needed. You just create a XML-like file describing the installer and the toolset creates the MSI for you. Great!

Read the rest of this entry »

Reading Metastock files

Posted on August 6th, 2008 in Python, Stock exchange, programming | 2 Comments »

Note: a free tool converting Metastock data to text files is available.
Last week I decided to check how my trading system performs while playing on different foreign indexes. First I had to download the test data. I found a web page offering the quotations I was interested in - luckily it wasn’t expensive.The problem was (of course it occurred after I had paid) that the data was available only in Metastock format. Of course I use my own software (just as every other programmer ;) ) that helps me to play stocks and futures and I don’t have Metastock. So I decided I would give it a try and I wrote a tiny program that reads Metastock files and generates text files with quotes. I used my beloved Python. You can find the source here.

Read the rest of this entry »

Adding “Check for update” feature to your C# application

Posted on May 29th, 2008 in c#, programming | 13 Comments »

Today I decided I would add a ‘check for update’ option to my Eyes Relax application. This is quite useful feature, especially when you host your application on many hosting servers (like download.com and others). In this case it can be difficult for the user to check if there is a newer version of your software available, because:

  • the user does not remember where he downloaded the application from
  • there is an older version on the hosting server, so the user is not aware that there is a newer version of your app available
  • simple, but very common reason: the user is to lazy to look for the new version :P; because it’s easier to simply select the ‘update’ option in your application, it may work for lazy users

Beside those reasons this is a nice, small feature we can practice our c# programming skills on :). At least for me, because I’ve spent last two years mainly developing server modules in Python. Two major subjects are:

  • HTTP file downloading
  • simple XML parsing (XmlTextReader)

Let’s start.

Read the rest of this entry »

Eyes Relax 0.1 was released

Posted on May 19th, 2008 in Eyes Relax, Freeware tools | 1 Comment »

Finally I found time to do something useful. A few months ago started to worry about my eyes (I work as a programmer, so I spend a lot of time in front of my computer). A good exercise that can help protecting your eyes is to have a break and focus the eyes on something at a further distance. Despite I know this, I often forget about taking regular breaks when I work. So I started looking for a utility that would remind me about taking breaks. Unfortunately, all the usable tools I found were shareware. Instead of buying one of those, I thought that such simple and useful utility should be available for free for everyone. And here you go. I released the first version, which can be found here. Enjoy.

Hello world!

Posted on April 7th, 2008 in WordPress | No Comments »

Hello,

This is my first blog post, so I just wanted to say “Hello, Internet” :)

Greets,
mech