Strangelights

Another tech blog.

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p>

As I alluded to in my last wix blog entry if you want to provide any sort of location robust access to well known folders Type 50 CustomActions are not for you. I thought I could get away with this as we’re just using msi to deploy our bespoke app to the testing environments which we control. However my boss came to me this morning saying they had one machine on behaving in a pre-jited manor could I take a look; sure enough the windows folder on this machine was c:\winnt rather than c:\windows like I had assumed it would be. Lesson learn, I set off to alter my install scripts to produce Type 34 custom actions. Again much bashing of head against monitor (although slightly less than last time), so I thought I’d again share the results.

 

Continue reading ...

I recently had to create an msi installer that ran ngen on each of the assemblies that I installed. I had a number of difficulties doing this, so I thought I share my findings here an hopefully save others a bit of time.

 

Continue reading ...

Dominic Cooney has create this parser library for F#.

Continue reading ...

Domonic Cooney has published an interesting blog post on a regular expression interpreter in F#

 

 

Continue reading ...

A developer at work queried me to why RaiseError generates an exception when working with a DataSet but not when working with an IDataReader. Here is a short code fragement that demonstrates the problem.

 

using System;

Continue reading ...

 

Danish customs 2

Published: 2004-06-10

If you get married in Denmark the groom does not know when his stag (bachelor) party will be. His friends arrange to kidnap him some time before the big day and return him some time later, hopefully before the wedding.

Continue reading ...

 

Danish customs

Published: 2004-06-08

If you are not married by the you're 25 birthday you are given cinnamon. If you're still unmarried at 30 you get pepper.

Feedback:

Continue reading ...

 

The first big difficultly I had was with the web.config file, choosing the right one is very import, yet there very little explination of the differnce between the configuration files. The configuration files rely heavily on the "HandlerConfiguration" node, this node and it's children provides a bunch of regualar expressions that match agaist the url and redirect you to the apporate places. I choose to use "Single1_Web.config" this was a big mistake as the regualar expression in this file are only suitable this is only sutiable if you intend to run you blog in the root of your web site. If you want to run you're blog in a sub dir then you need "Single2_Web.config".

The second problem I had is that .Text requires you to host it in an IIS application. Not a huge problem if you can do that but my ISP don’t give enough control of IIS to create a sub directory in its own application. After a lot of head scratching I started thinking like this: What exactly does .Text uses the IIS application for? Well it used for two things, to read the user settings out of the sql server database and to decided whether the URL being requested is part of a blog. Neither of these things are exactly require there own application, so I when thought the source searching for .ApplicationFolder and replaced it with the name of the dir I wanted. Yes this was morally wrong to hard code it like that and I felt dirty afterwards but after a little rogering of the vs projects it worked exactly how I wanted it to work, no changes to IIS required.

Continue reading ...

 

F# updates

Published: 2004-05-27

I'll be noting all f# updates in my blog, so you can just subscribe to the "F# updates" feed and be automatically informed of any new F# updates.

On a related note I've added 5 new tutorals to the f sharp site. A summary of these is available here.

Continue reading ...