At my current gig, I’m in the process of developing a set of UIs and Windows Services to perform distributed tasks (ya I know a little vague on the details – sorry!)
Today I ran across a problem that Google couldn’t help with. I was trying to run a WPF application on a Windows Server 2008 RC2 box, but the application would crash before it even started up. No reason just an ugly exception:
APPCRASH – Kernelbase.dll with the name of the executable
Nice and helpful… Thanks MSFT. I queried everything I could think of:
- APPCRASH Kernelbase.dll
- WPF Appcrash
- WPF Kernelbase.dll
- WPF app on Windows Server 2008
- Running WPF on Windows Server
- Run WPF .net on Win Server 2008
- … and so on ..
Heck I even tried searching for a WPF redistributable (that’s funny because such a thing doesn’t exist… which we’ll talk about in a second.)
.NET has some built in tools for debugging an application which are located in the Framework directories.
Navigating to the Framework directory I got the following list:
- v1.0.3705
- v1.1.4322
- v2.0.50727
- v4.0.30319
Notice something missing there? There’s no .NET 3.5. And of course .NET 3.5 is the version that includes the WPF dlls – it is effectively the WPF redistributable.
I had installed the .NET 4.0 framework and just assumed that it would also install earlier versions of the framework. As it turns out that that assumption was false.
A quick install of the 3.5 .NET Framework on Windows Server 2008 and I was good to go, my app was running and there weren’t any app crashes.