2
votes

Users around my country are currently beta-testing our application. My app uses WPF & Linq, so I need .NET 3.5 installation. On most system, everything works find, including automatic installation on .NET 3.5 on machines that do not have that installed yet.

However, on one machine (XP SP2) my application does not run. The user reported no issues during .NET 3.5 installation (except for a process that need to close before the installer could continue - he closed the process and continued).

The application crashes on startup. To debug this issue, I did the following:

  • Have him reboot his machine
  • Let him manually re-install the .NET 3.5 framework (no errors reported)
  • Have him run a test WPF app that only displays a button -> also crashes
  • Let him send the .NET 3.5 installation logs -> these are huge, don't now where to look

Does anyone have strategy on how to debug such issues? I expect that this will occur more when the application is released..

3

3 Answers

1
votes

Check operating system logs from the user (system log shows crashes). Do you get a crash dump? FUSION logs would help - that is the linker running. http://msdn.microsoft.com/en-us/library/e74a18c4%28VS.71%29.aspx - if there is a problem with assembly versions, it shows up there.

Do you have a last resort error handler? Question is - would it fire? What is the crash reason? Fusion / linker / version: it would not. Permissions - it would (as your application actually starts).

Make sure he is fully patched - XP sp3, .net, the complete windows update sequence.

0
votes

Make sure he has .NET 3.5 Service Pack 1, if that's necessary for your app.

0
votes

Have you tried uninstalling .NET, deleting the folder \windows\system32\microsoft.net\framework\v3.5 if it's still there and reinstalling .NET ?

My guess is that this need to close a process shows that something was in use during the first install and prevented a correct install of the framework, BUT the fact that the install continued till the end has stored inside Windows the information that the framework is installed correctly, so the second install didn't do much.