You CAN use HttpModule
to handle application start event
Contrary to others that only write/believe what they read I've done my own part and found out it's possible to handle Application start using an HTTP module. It's a bit of a hack really but it reliably works. It's not simething someone should avoid, because I've seen it in MS modules as well (namely Sharepoint 2010 SPRequestModule
) This blog post will get you started. I've done it myself and it simply works.
If you want it to be thread safe as well, you can also lock execution and then mark module as application started. It's the safest way of doing it.
private static bool isStarted = false;
private static object moduleStart = new Object();
...
if (!isStarted)
{
lock(moduleStart)
{
if (!isStarted)
{
// handle aplication start
...
isStarted = true;
}
}
}
I've created my own library that hooks to existing applications like Sharepoint 2010. I don't want to change Global.asax of Sharepoint now do I? Using technique explained in the blog post, I was able to hook into it. Easily.
And I guess this is exactly what you've been looking for. Hooking inot start event of an arbitrary application by adding a module into web.config
. Do it this way. It will work.