Warning: strpos(): needle is not a string or an integer in /customers/a/f/c/fjorden.se/httpd.www/joel/index.php on line 31 Warning: strpos(): needle is not a string or an integer in /customers/a/f/c/fjorden.se/httpd.www/joel/index.php on line 37 Blog by Joel Fjordn a.k.a. Will o Wisp
Custom Actions and Upgrade Installations Cause Problems 
Sunday, March 11, 2007, 06:21 PM - General
I ran into this problem when making an upgrade installation of Code Style Enforcer. The problem is that Code Style Enforcer uses custom install/uninstall actions in order to locate and ensure that the correct DXCore version is installed, among other things.

When doing an upgrade installation, the old custom actions assembly is first loaded, into the AppDomain, in order to call the uninstall method for the version currently installed. When its time for the Install method to be called in the new Custom Actions assembly, it still uses the old assembly since that is already loaded into the AppDomain. This has to do with how the Assembly.LoadFrom method works. This is really bad, not only since the new and perhaps updated Install method wont be called, but since the old one will execute instead.

Microsoft suggests signing the Custom Actions assembly with a strong name in order to solve the problem, but Ive tried that without any success. Another solution might be giving the assembly different names for each new installer version, but this seems like a really ugly solution to me.

For more information about this have a look at:

Im really not sure if this problem is entirely bound to setup projects in Visual Studio and the Uninstall and Install/Commit custom actions implemented as part of an Installer class. I will try to migrate my setup project to WiX instead and see if I can get it work as expected.

For the interested, the Windows Installer XML (WiX) is a toolset that builds Windows installation packages from XML source code. I will tell you more about it in another blog post.
3 comments ( 60 views )   |  related link

Attending Tech-Ed Barcelona 
Wednesday, November 1, 2006, 06:43 PM - General
On Saturday I am heading down to Barcelona for some vacation, but mainly for the Tech-Ed Developers Conference. I am really looking forward to attend some mind-blowing sessions, who knows maybe I will see some of you there...

When I get back in about two weeks from now, I hope there will be a new version of DXCore available, so that we can get the last few things in to the upcoming version of Code Style Enforcer.

Course in Windows Communication Foundation 
Wednesday, August 23, 2006, 06:30 PM - General
I am currently away attending the WCF Master Class with Juval Lwy, from IDesign, who actually is the man behind the C# Coding Standard that we base our default code rules on. I can truly recommend this course to anyone who wants to deepen their knowledge in the future of .NET development, which by the way is already here!
add comment ( 196 views )   |  related link

The Beginning of My Blogging Era 
Wednesday, July 26, 2006, 05:24 PM - General
Well, what can I say, blogging today has become like the number one thing to do if you want to be seen, heard or simply laughed at.

I am not sure which of these three things that is the reason for me to start this blog, maybe a combination, time will tell...

One reason, probably why I started, is to spread the interest in plug-ins, or add-ins, for Visual Studio. DXCore, by a company called Developer Express, is a really good extensibility framework for these kinds of things. Did I forget to mention that it is free!!!

I myself have made a plug-in that uses DXCore for checking the code against a configurable code standard. I will tell you more about this in my upcoming blog. There will also be a special page dedicated to this project "Code Style Enforcer", where you can download the latest version.

Another hot topic of interest to me right now is the new upcoming .NET Framework 3.0, former WinFX. I am currently involved in a project utilizing WPF, which I think is a really good upgrade from Windows Forms. It is therefore very likely that some topics in this blog will be about .NET 3.0.
3 comments ( 2029 views )   |  related link