Aaron Stebner's WebLog

Thoughts about setup and deployment issues, WiX, XNA, the .NET Framework and Visual Studio

One root cause of component registration failures in MCE 2005 Update Rollup 2 identified

One root cause of component registration failures in MCE 2005 Update Rollup 2 identified

  • Comments 16

Now that I've posted steps to diagnose and manually fix component registration failure errors that are sometimes seen after installing Update Rollup 2 for Media Center 2005, I have heard from a few customers who have run into this problem and worked with them to identify at least one possible underlying cause.

In the cases I have investigated so far, the NGEN commands that are run during Update Rollup 2 registration to fail with an "interface not found" return code.  When running the same NGEN command separately, these machines showed an error message stating The procedure entry point GetRequestedRuntimeVersion could not be located in the dynamic link library mscoree.dll

The underlying problem on these machines was that the version of %windir%\system32\mscoree.dll was reverted back to the .NET Framework 1.0 SP3 version (1.0.3705.6018).  Ordinarily, mscoree.dll should be the .NET Framework 1.1 SP1 version (1.1.4322.2032) or higher on machines with Update Rollup 2 installed because the .NET Framework 1.1 SP1 is a prerequisite for installing Update Rollup 2.

The following steps have allowed the customers I have worked with so far to fix this issue:

  1. Download and reinstall the .NET Framework 1.1 SP1
  2. Go to the Start menu, choose Run and type cmd
  3. From the cmd prompt, run %windir%\ehome\medctrro.exe /o /p RunOnce to re-run Update Rollup 2 registration code

I am still not clear about how mscoree.dll is being reverted in this scenario, so my next step is to figure out what exactly could cause that.  This is an interesting convergence of my previous experience working on the .NET Framework setup team and my current experience on the Media Center setup team.  Based on my experience on the .NET setup team, I can't think of any valid ways this file would be reverted like this.  One possibility I can think of is performing a system restore - I know that performing a system restore will revert the file versions, but I don't know if it would leave behind the registry value that would trick Update Rollup 2 setup into thinking that 1.1 SP1 is installed when actually it isn't.  For reference, the registry value that Update Rollup 2 setup looks at to detect the presence of .NET Framework 1.1 SP1 is HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v1.1.4322@SP >= 1.

I think there may also be some potential conflicts with some older beta versions of the .NET Framework 2.0.  I have not yet found a machine that demonstrates problems that I've traced back to .NET 2.0, but I do know that installing .NET 2.0 will update the version of %windir%\system32\mscoree.dll, and uninstalling .NET 2.0 will not revert it back because of how Windows Installer handles shared files and reference counting.  I am going to try to create some repro scenarios to look at this further.

I'll post further updates when I figure out more about the root cause of these issues....

 

  • This solved it for one of the two problem machines. I'll try the other later. Thanks!!!
  • One machine will not allow mce functionality to return using all of your tricks.That machine was an oem pc I built. The other machine (an HP z545) was OK last night like I previously reported but it reverted back tonight to the MCE no tuner found situation. This rollup2 has serious flaws...
  • Well, after fighting with Rollup 2 on an OEM machine I built (and I can't think of anything that would have reverted .Net back; as I hadn't done any system restores nor uninstalled anything till Rollup 2 failed) that fixed it.
  • The component registration problem after installing rollup2 for MCE 2005 on two of my machines still isn't resolved. All of the approaches outlined on MSDN including the use of a utility, mcerepair 0.2 has been unsuccessful (full uninstall and reinstall of rollup 2, net 1.1, net 1.1 sp multiple times). Since I can use other PVR alternatives such as Sage, BTV or Meedio on these two machines I'll wait til a fully comprehensive rollup 2 fixer or a rollup 2a is released. I regret ever installing rollup2. I can't even revert back to pre-rollup2 functionality.

    I didn't install a beta. I installed an official release that now is known to have faulty component registration routines under some circumstances not fullly understood yet. As an example, I don't mind doing R&D with my Fusion 5 board on a select machine or two. That is my choice. However, my mainstream HP z545 and a homebrew MCE box are unvolunteered guinea pigs. Rollup2 should not have been released with these flaws.


  • You can uninsinstall it by going to the add and remove programs and make sure to check the box at the top that says show updates. Then at the bottom you can choose to remove the rollup2. The side effect of this is you need to reconfigure your TV settings. Hope this helps.
  • Very, very cool. This was on a new VAIO that did not have too much development software. It did have VS2003 - no idea if that changed anything. This was rather quick and painless.

    This sounds like an infomercial "I used to weigh 400 pounds and was washing my dishes in the bathtub until I re-ran the Update Rollup 2 registration code! Now I own my own house, a boat, and my own company!"
  • Also, thought I should point out that after this first part was fixed I noticed that the TV Tuner was not being recognized. I found a solution here: http://www.thegreenbutton.com/community/shwmessage.aspx?ForumID=41&MessageID=136083&TopicPage=2

    All I needed to do was to uninstall the hotfix and re-run the registration code again. Everything seems to be working well now.
  • Upgrading the OS to MCE 2005 SP2 (from either MCE 2004 or MCE 2005) resets mscoree.dll to 3705.
  • Thank you for your site. It is very informative. I still cannot get my Theater 550 Pro to install in Media Center but I found other ASPI.NET registry entries pointing to .Net 2.0 that was removed instead of 1.1.

    I think I will reformat and omit .Net 2.0 and Update Rollup 2 until all the problems are fixed from Microsoft. Thanks Again.
  • MCE Repair 0.2 works to get sound working in live tv and any stutter that occasionally appears but only til I reboot. Once in awhile it works ok on start up but rare. MCE 2005.
  • Thank you for the advice to run medctrro.exe. It was the single critical step to get the TV working. Before I was stuck with Tuner not Found for quite a while. Thanks again.
  • DLL hell hehehe ; I thought that was fixed with .Net ;=)

    P.S My MCE2005 is well screwed. I thought getting it working with ATI AIW was bad, so I bought a 150MCE and now I get this trouble !..

    All I want is for my XBOX 360 to talk to my PC with this minor SP2 update...

    Yet it seems more like MS talking to a SUN box ;-(

  • Hi Greg - I am not sure I understand exactly what issue you are running into.  Can you please provide details about the exact error messages you are seeing and what troubleshooting steps you have tried so far?
  • Hi,
    I have tried your advice but mine still would not work.  I got the following error message after I accidentally removed PowerDVD 5.5 and now trying to play DVD (I later reinstalled PowerDVD 5.5):
    "Application Failure.  A critical Media Center process has failed.  Please restart the computer and try again.  If the problem persits, contact your hardware manufacturer for assistance."

    Thanks,

    Arthur.
  • Hi Arthur - The steps listed at http://blogs.msdn.com/astebner/archive/2006/02/17/534559.aspx might also help resolve this issue on your system, so I would suggest that you try them out as well.
Page 1 of 2 (16 items) 12
Leave a Comment
  • Please add 2 and 8 and type the answer here:
  • Post