Possible issue installing the Windows Phone Developer Tools 7.1 beta caused by incompatible components

As noted in my previous blog post, the Windows Phone Developer Tools 7.1 Beta was released this week.  I’ve heard from a few people who have had problems installing the WPDT 7.1 beta because setup detected incompatible components installed on the computer.  I want to describe this scenario in a bit more detail in case anyone reading my blog in the future runs into similar problems.

If you see an error installing WPDT 7.1 due to incompatible components, I suggest using steps like the following to diagnose and resolve this issue:

  1. Open the file %temp%\dd_install_vm_xcor2_100.txt and determine the exact components that WPDT setup has identified as incompatible.  The incompatible products will generate log file entries like the following:

    [05/27/11,10:49:40] VS Scenario: ***ERRORLOG EVENT*** : Error: CVSScenario::ExecuteEachBlocker returned false
    [05/27/11,10:49:40] Setup.exe: AddGlobalCustomProperty
    [05/27/11,10:49:40] VS Scenario: ***ERRORLOG EVENT*** : Error:There is a blocking condition met, the installer is blocking because of Section :
    [05/27/11,10:49:40] Setup.exe: AddGlobalCustomProperty
    [05/27/11,10:49:40] VS Scenario: ***ERRORLOG EVENT*** : Microsoft Visual C# Express 2010

  2. Look in the WPDT setup data file named blocker.sdb to determine the exact registry key that is being used to detect each incompatible product.  Blocker.sdb is located in the vm_web.exe self-extracting setup package, and I have posted an extracted copy at this location.  For the product in the above example, the information in blocker.sdb looks like the following:

    [Microsoft Visual C# Express 2010]
    VersionCheck=PreReqRegVerCheck
    DetectKey=HKLM,SOFTWARE\Microsoft\DevDiv\vcs\Servicing\10.0\xcor
    DetectKeyVal=Version
    DetectKeyValData=40219.01

    This means that setup will block if the registry key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DevDiv\vcs\Servicing\10.0\xcor@Version exists and the value is less than 40219.01.

    There is one subtle issue here - the WPDT setup is a 32-bit application, so that means that the registry location will be different on a 64-bit version of Windows.  In the example above, the registry key will be at HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DevDiv\vcs\Servicing\10.0\xcor@Version.

  3. Use the Programs and Features control panel to uninstall the product that is triggering the block.

  4. Restart the computer.

  5. In some cases, uninstalling the product will not remove the registry key that WPDT setup is checking for in blocker.sdb.  In those cases, you may have to manually rename or delete the registry value so that the block will no longer be triggered.

If you run into WPDT installation issues that are not solved by the above suggestion, you can use the log collection tool to gather your setup log files.  This log collection tool will create a file named %temp%\vslogs.cab.  Once you have gathered your setup log files, you can upload them to a file server of your choice (such as https://skydrive.live.com), and post a link to the log files in the forums or in a comment on my blog to get additional support.

<update date="8/29/2011"> Added a step to restart the computer in case there are any files or registry keys in use that need to be removed by the uninstall process in step 3. </update>