Aaron Stebner's WebLog

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

July, 2007

  • Aaron Stebner's WebLog

    Possible cause of Windows - No Disk error during VS 2008 beta 2 setup

    • 2 Comments

    We have seen a few cases where running Visual Studio 2008 beta 2 setup will cause an error dialog to appear when the setup UI initializes.  The dialog has the title Windows - No Disk and has Cancel, Try Again and Continue buttons, and looks something like the following:

    The systems we have seen this error on so far have had a USB card reader attached that caused one or more unmounted drive letters to appear in Windows Explorer.

    It is possible to workaround this issue in one of 2 ways:

    1. Canceling VS setup, temporarily disabling or removing the USB card reader from your system and then re-running VS setup
    2. Pressing Continue one or more times (depending on how many unmounted drive letters appear on the computer) will allow setup to continue to load correctly
  • Aaron Stebner's WebLog

    Visual Studio 2008 and .NET Framework 3.5 setup log files

    • 63 Comments

    The installers for the .NET Framework 3.5 and Visual Studio 2008 chain several different prerequisites and optional components behind the scenes.  If one of these setups fails, there are numerous possible causes due to the number of packages being chained behind the scenes.  The following provides a list of log files created by the setup wrappers for each product and the child packages that are chained in during installation. 

    .NET Framework 3.5 setup log files

    The following is a complete list of log files that can be produced during .NET Framework 3.5 setup.  This list may vary depending on what OS you are installing on, what processor architecture, and what prerequisite components were already installed on the system prior to running .NET Framework 3.5 setup.

    Logs produced by the .NET Framework 3.5 setup wrapper:

    • %temp%\dd_dotnetfx35install.txt
    • %temp%\dd_dotnetfx35error.txt
    • %temp%\dd_depcheck_netfx*.txt

    Logs produced by the packages chained during .NET Framework 3.5 setup:

    • RGB Rasterizer - %temp%\dd_RGB9Rast_*.txt
    • MSXML 6.0 - %temp%\dd_msxml6_*.txt
    • WIC - %temp%\dd_wic*.txt
    • .NET Framework 2.0 SP1 - %temp%\dd_net_framework20*.txt
    • .NET Framework 3.0 SP1 - %temp%\dd_net_framework30*.txt
    • .NET Framework 3.0 SP1 WCF custom action - %temp%\dd_wcf_retCA*.txt
    • .NET Framework 3.5 product MSI - %temp%\dd_net_framework35*.txt

    Visual Studio 2008 setup log files

    The following is a complete list of log files that can be produced during Visual Studio 2008 setup.  This list may vary depending on what OS you are installing on, what processor architecture, and what prerequisite components were already installed on the system prior to running Visual Studio 2008 setup.

    In addition to the logs listed below, Visual Studio 2008 setup can produce the logs listed above for the .NET Framework 3.5 because the .NET Framework 3.5 is a prerequisite that is chained in during Visual Studio 2008 setup if it is not already installed on the system.

    Logs produced by the Visual Studio 2008 setup wrapper:

    • %temp%\dd_install*.txt
    • %temp%\dd_error*.txt
    • %temp%\dd_depcheck*.txt
    • VSMsiLog*.txt - located in your %temp% directory during Visual Studio 2008 setup; moved to %ProgramFiles%\Microsoft Visual Studio 9.0\<product name>\Logs after a successful installation; left in %temp% after a failed installation and after uninstallation

    Logs produced by the packages chained during Visual Studio 2008 setup:

    • Windows Installer 3.1 - %windir%\KB893803v2.log
    • .NET Framework 3.5 - see the full list of logs at the top of this post
    • Visual Studio 2008 64bit Prerequisites - %temp%\dd_prereq*.txt
    • Document Explorer 2008 - %temp%\dd_dexplore*90*.txt
    • Web Designer Tools - %temp%\SetupExe(*).txt
    • .NET Compact Framework 2.0 SP2 - %temp%\dd_netcfsetupv2*.txt
    • .NET Compact Framework 3.5 - %temp%\dd_netcfsetupv35*.txt
    • Visual Studio Tools for Office Runtime 3.0 - %temp%\dd_vstor*.txt
    • Visual Studio 2005 Tools for the 2007 Microsoft Office System Runtime - %temp%\dd_vsto_ret20*.txt
    • SQL Server Compact Edition 3.5 - %temp%\dd_SSCERuntime*.txt
    • SQL Server Compact Edition 3.5 Design Tools - %temp%\dd_SQLCEToolsForVS2007*.txt
    • SQL Server Compact Edition 3.5 For Devices - %temp%\dd_SSCEDeviceRuntime*.txt
    • Windows Mobile 5.0 SDK R2 for Pocket PC - %temp%\dd_WMPPC_5_0*.txt
    • Windows Mobile 5.0 SDK R2 for Smartphone - %temp%\dd_WMSP_5_0*.txt
    • Device Emulator version 3.0 - %temp%\dd_64bitEmulator*.txt, %temp%\dd_EmulatorForWinXP*.txt and/or %temp%\dd_Emulator*.txt
    • SQL Server 2005 Express Edition - %programfiles%\Microsoft SQL Server\90\Setup Bootstrap\LOG\Files\*.*
    • Visual Studio 2008 Remote Debugger - %temp%\dd_rdbg*.txt
    • Windows SDK - %temp%\dd_winsdk*.txt
    • Visual Studio Performance Collection Tools - %temp%\dd_Performance_Collection_Tools*.txt
    • Crystal Reports - %temp%\dd_CrystalReports2007*.txt

    Logs produced by the packages chained during Visual Studio 2008 Express Edition setups:

    • Windows Installer 3.1 - %windir%\KB893803v2.log
    • .NET Framework 3.5 - see the full list of logs at the top of this post
    • SQL Server Compact Edition 3.5 - %temp%\dd_SSCERuntime*.txt
    • SQL Server Compact Edition 3.5 Design Tools - %temp%\dd_SQLCEToolsForVS2007*.txt
    • Visual Studio 2008 Remote Debugger Light - %temp%\dd_ExpRemoteDbg*.txt
    • Windows SDK - %temp%\dd_winsdk*.txt
    • MSDN for Visual Studio Express Editions - %temp%\dd_MSDNExp*.txt
    • Silverlight 1.0 - %temp%\Silverlight*.txt

    Logs produced by the MSDN for Visual Studio 2008 setup wrapper:

    • %temp%\dd_install_MSDN_VS_90*.txt
    • %temp%\dd_error_MSDN_VS_90*.txt
    • %temp%\dd_depcheck_MSDN_VS_90*.txt
    • VSMsiLog*.txt - located in your %temp% directory during MSDN setup; moved to %ProgramFiles%\MSDN\MSDN9.0\<product name>\Logs after a successful installation; left in %temp% after a failed installation and after uninstallation

    Logs produced by Visual Studio 2008 SP1:

    • %temp%\Microsoft Visual Studio 2008 SP1*.* 

    If you run into any issues while installing the .NET Framework 3.5, Visual Studio 2008 or MSDN for Visual Studio 2008 and plan to report setup issues to Microsoft via the product feedback site or the MSDN Forums, please locate and include any of the above log files if possible because it will make it easier for us to debug the failures and find root causes and workarounds.

    <update date="10/4/2007"> Added a log file to the .NET Framework 3.5 list for the WCF custom action that I missed previously </update>

    <update date="1/11/2008"> Added Silverlight log files to the list for VS 2008 Express Editions since it was added as a chained component between the time I wrote this blog post and the time that VS 2008 shipped. </update>

    <update date="5/23/2008"> Added log file information for Visual Studio 2008 SP1 </update>

    <update date="11/20/2009"> Fixed broken link to the product feedback site. </update>

     

  • Aaron Stebner's WebLog

    VS 2008 beta 2 install failure caused by previous beta version of Microsoft Web Designer Tools

    • 9 Comments

    Because of the large volume of beta uninstall issues that were seen during the Visual Studio 2005 project, the beta versions of Visual Studio 2008 will automatically chain uninstall of other beta packages that it installs as prerequisites or optional components (things like Document Explorer, the VS Tools for Office Runtime Components, the .NET Framework 3.5 beta, etc).

    However, there is one beta package that chained uninstall was not implemented for in previous beta versions - the Microsoft Web Designer Tools.  Because this package is not automatically uninstalled when you uninstall a previous beta of VS 2008, some logic was added to VS 2008 beta 2 setup to automatically uninstall it prior to installing the beta 2 version of this package.

    We have run into a few cases where the automatic uninstall of previous versions of the Microsoft Web Designer Tools package does not work, and in those cases, VS 2008 beta 2 installation will fail.  In those cases, you must manually uninstall the old beta of this package from Add/Remove Programs.

    How to workaround this error

    If you see a failure during VS 2008 beta 2 setup on a system that previously had an earlier beta or CTP of VS 2008 installed on it, you can use the following steps to locate and remove the Microsoft Web Designer Tools package:

    1. Go to the Add/Remove Programs control panel by clicking on the Start menu, choosing Run, typing appwiz.cpl and clicking OK
    2. Locate the item named Microsoft Visual Studio Web Authoring Component and choose to uninstall it
    3. Try to run VS 2008 beta 2 setup again

    How to diagnose this error

    There are several possible causes of failures in VS 2008 beta 2 setup, and the issue described above only solves one of them.  If you are interested in looking at setup log files to determine if you are running into this exact issue, you can look in the file named %temp%\dd_install_vs*.txt (the main installation log created by the VS 2008 beta 2 setup.exe).

    If you see entries like the following, you are likely running into this Microsoft Web Designer Tools issue:

    [07/29/07,11:11:17] DepCheck: gencomp320
    [07/29/07,11:11:17] DepCheck_Result: 1
    [07/29/07,11:11:17] Microsoft Visual Studio Team System 2008 Team Suite - ENU: Install(): bAttemptInstall: 0
    [07/29/07,11:11:17] Microsoft Visual Studio Team System 2008 Team Suite - ENU: Install(): Not attempting to call MsiInstallProduct()!!!! Baseline not met!
    [07/29/07,11:11:18] Setup.exe: AddGlobalCustomProperty
    [07/29/07,11:11:18] Microsoft Visual Studio Team System 2008 Team Suite - ENU: CRootComponent::Install(): Setup Failed; MSIInstallProduct return value either ERROR_INSTALL_FAILURE or default.

    This log snippet indicates that setup is not going to try to install the main VS product because it has detected that a prerequisite package has not been correctly installed.  The package that is not correctly installed is represented by gencomp320, which is described in the file baseline.dat in the Setup subdirectory on a VS installation disc.  Looking in that file, you can see that gencomp320 represents the Microsoft Web Designer Tools package.

  • Aaron Stebner's WebLog

    CTP of peer-assisted download manager that can be used for Visual Studio 2008 beta 2

    • 1 Comments

    I previously posted a set of links to download various editions of Visual Studio 2008 beta 2.  Most of those links point to very large DVD images that can be problematic to download due to their large sizes.  There is a community technology preview (CTP) available of a peer-assisted download manager that can be used as an alternative download mechanism for VS 2008 beta 2.

    If you have not yet downloaded VS 2008 beta 2 and/or you are having trouble downloading it from the links that point directly to the DVD ISO images, I encourage you to try out the July CTP of the Microsoft Secure Content Downloader.  You can find more information and a download link at http://www.microsoft.com/downloads/details.aspx?FamilyID=9a927cf6-16e4-4e21-9608-77f06d2156bb.

  • Aaron Stebner's WebLog

    .NET Framework 3.5 beta 2 and Visual Studio 2008 beta 2 now available

    • 9 Comments

    As announced earlier today in this post on Soma's blog, beta 2 of the .NET Framework 3.5 and Visual Studio 2008 (formerly code named Orcas) were released for download today.  You can check out this MSDN page for more information, and also check out this Channel 9 video to see Soma and Scott Guthrie discuss these releases in more detail.

    Here are the download locations for these new beta versions:

    I encourage you to check out these beta versions, and please report any issues that you see while using these products on the Microsoft Connect site so that we can continue to improve the products before the final release.

  • Aaron Stebner's WebLog

    Example WiX-based setup that adds a custom strip to the Windows Vista Media Center start menu

    • 4 Comments

    In the past, I've posted examples (such as this and this) demonstrating how to create installers for Windows Vista Media Center applications using WiX.  A couple of those examples ended up shipping in the Media Center SDK for the Q and Z sample applications.  Recently, I was asked about how to create a WiX-based MSI that would install and register a Media Center application and also add a custom strip to the Media Center start menu for the application.  There is not yet an example for the setup authoring for this specific scenario in the Media Center SDK, so I decided to create something and post it here.

    Getting started

    In order to create an MSI that modifies the Media Center start menu, it is necessary to have a general understanding of how start menu customizations can be accomplished.  The following information is very helpful to understand this:

    • The high-level steps needed to add a custom strip to the Media Center start menu and control the ordering of tiles are covered in the Creating Custom Start Menu Strips topic in the Windows Vista Media Center SDK documentation
    • The Media Center SDK includes a Register Application sample that is installed to C:\Program Files\Microsoft SDKs\Windows Media Center\v5.0\Samples\Register Application (if you have the SDK installed to the default path).  This sample includes RegisterMceApp XML files, image files and registry files needed to register a set of applications and place them on the Media Center start menu.
    • I have written a few blog posts about customizing the Media Center start menu that contain some of the same information that is in the SDK as well as some supplemental information for deployment scenarios.

    How to create an MSI to add a custom strip to the Media Center start menu

    I have created a downloadable example that uses WiX v3.0 and creates a custom strip with 5 tiles on it in the Media Center Start menu.

    For this example, I used the Register.Application.1 application that is included in the Windows Vista Media Center SDK at C:\Program Files\Microsoft SDKs\Windows Media Center\v5.0\Samples\Register Application.

    Here are the exact steps I used to create this example:

    1. I started by making copies of the setup files for the Z sample application (located at C:\Program Files\Microsoft SDKs\Windows Media Center\v5.0\Samples\Windows Media Center Presentation Layer Samples\Z\Setup)
    2. I modified z.wxs by removing all of the files included as a part of the Z sample application, and instead adding the following files that are a part of Register.Application.1 in the Register Application sample:

      Image.Start.App.1.1.png
      Image.Start.App.1.2.png
      Image.Start.App.1.3.png
      Image.Start.App.1.4.png
      Image.Start.App.1.5.png
      Register.Application.1.xml

      Note - Register.Application.1 is a Windows Media Center Presentation Layer web application, so it is not necessary to install any binaries for this example.  However, if your application is not a web application, you will need to install one or more binary files as part of your application and the main application binary needs to be installed to the GAC.  The Q and Z sample applications demonstrate how to do this if needed for your application.
    3. I added a new component named StartMenuRegistration, and included the set of registry values that is listed in the file Registry.Application.1.reg in the Register Application sample in the Media Center SDK in this new component
    4. I made a few other miscellaneous changes to the copy of z.wxs so that this new example would have unique product code, upgrade code, product version and install path information
    5. I modified the build.bat file and WXL file to include information specific to this new sample instead of information for the Z sample that I used as a starting point

    How to build and run this example

    If you would like to try out this application on your system to see what happens when you install it, you can use the following steps to download the sample and build the MSI:

    1. Download the latest version of the WiX v3.0 wix3.msi and install it on your system if you haven't already
    2. Download and extract the contents of the example that I posted at http://astebner.sts.winisp.net/Tools/start_menu_strip_setup_example.zip to a local folder on your system
    3. Go to the folder that you extracted start_menu_strip_setup_example.zip into and double-click on the build.bat file to create an MSI for this example using WiX v3.0
    4. Install the resulting setup.msi from the same folder onto a Windows Vista Home Premium or Ultimate system
    5. Launch Media Center and look for a strip named Custom Start Menu with tiles named title.start.app.1.1, title.start.app.1.2, title.start.app.1.3, title.start.app.1.4 and title.start.app.1.5
    6. Re-run setup.msi to uninstall the sample application once you are done trying it out

    Additional notes

    The above example only demonstrates how to create a custom strip on the Media Center start menu.  As you can see by looking at the details of the Register Application sample in the Media Center SDK, there are many other options that can be configured to control where entry points will appear when installing/registering Media Center applications.  You will need to adjust the WiX setup authoring shown in this example as appropriate depending on what kind of scenarios you would like to support for your application.  Hopefully the example that I posted will provide enough of a starting point to make any further customizations relatively straightforward.

    One other very important note - please do not copy and paste the contents of this example and use it as is.  Windows Installer uses component GUIDs to uniquely identify resources, so you need to change the component GUID values in the WXS file any time you create a new component in your setup authoring.  You can use a tool like guidgen.exe from Visual Studio or http://www.guidgen.com to generate new GUIDs.  If you copy and paste the sample, change the names of the files being installed, but do not change the component GUIDs, it will cause install and uninstall problems for products that use the same GUIDs (as described here).

  • Aaron Stebner's WebLog

    List of Windows locale identifier constants and strings

    • 0 Comments

    Recently, I was looking for a list of locales supported by Windows as well as the locale ID values and abbreviations for each of them.  Fortunately, a friend pointed me at this location on MSDN:

    Locale Identifier Constants and Strings - http://msdn2.microsoft.com/en-us/library/ms776260.aspx

    This link includes a table of supported locales, what version of Windows each locale was introduced in, the hexadecimal locale identifier value (such as 0x0409 for US English), the locale name and abbreviation (such as en-US for US English).

    The information in this table can be very useful if you are developing multi-lingual applications, so I wanted to link to it here to make it easier to find in the future.

  • Aaron Stebner's WebLog

    Windows Vista Media Center cookbook application

    • 0 Comments

    Olcay Buyan, a developer from MceDev.com, has posted an introduction and some screenshots for a new Windows Vista Media Center application that is currently being developed.  The application is an interactive cookbook, and in this post, it is combined with a kitchen-based Media Center display so you can use it to look up recipes while you are working in the kitchen.

    You can check out screenshots of the application and the kitchen-based Media Center systems at http://www.mcedev.com/News.aspx?id=744daf2c-78a3-46d3-b1e7-8cf214d2d14f.

    Hopefully there will be a downloadable version of the application available soon so I can try it out on my Media Center system.

  • Aaron Stebner's WebLog

    Link to updated Time Travel with Windows Media Center article

    • 0 Comments

    Stephen Toub recently posted this item on his blog and I wanted to link to it to make sure that Media Center application developers see it.

    A while back, Stephen wrote an article that explained how to develop an application for Windows XP Media Center Edition to allow users to jump to specific time codes in the media that is currently playing.  Recently, he published an updated version of this article with information about how to create an equivalent application in Windows Vista Media Center.  You can check out the article, titled Time Travel with Windows Media Center in Windows Vista at http://msdn2.microsoft.com/en-us/library/bb643809.aspx.

    There are some changes to the Media Center extensibility platform between Windows XP Media Center Edition and Windows Vista, so even if you've looked at the article and source code in the past, I encourage you to take another look at the article to learn more about some advanced tricks for developing applications for Windows Vista Media Center.

  • Aaron Stebner's WebLog

    Link to information about configuring Software Explorer on Windows Vista

    • 2 Comments

    I noticed an interesting post on the Windows Installer team blog that I wanted to draw some more attention to.  The post, located at http://blogs.msdn.com/windows_installer_team/archive/2007/07/06/configuring-windows-vista-software-explorer.aspx, explains how to customize the view presented by Software Explorer (the Windows Vista replacement for the Add/Remove Programs control panel applet).  It also lists Windows Installer properties that can be used to configure what information appears in Software Explorer when installing an MSI-based application.

    This information is useful if you are creating an MSI-based setup and want to better understand what happens behind the scenes when Software Explorer displays application information.  I encourage you to check out the post to learn more about Software Explorer and how MSIs can be configured for various display options available in Software Explorer.

  • Aaron Stebner's WebLog

    Link to details about how to use new patch creation features in WiX v3.0

    • 4 Comments

    Peter Marcu posted a couple of items on his blog recently that I wanted to link to here so hopefully more folks will see them.  The first is a high-level description of new patching features that have been added to WiX v3.0 over the past few months.  You can find the post at http://blogs.msdn.com/pmarcu/archive/2007/06/16/wix-building-a-patch-using-the-new-patch-building-system-part-2.aspx.  It briefly introduces the old and new ways to create patches using WiX.

    The second is a really nice example of how to create a patch using the new features in WiX v3.0.  You can find this blog post at http://blogs.msdn.com/pmarcu/archive/2007/06/28/sample-patch.aspx.  To summarize Peter's post, the following are the steps that can be used to create your first patch:

    1. Create your initial product layout file/folder structure
    2. Create a new copy of the product layout (called an upgrade layout) with patched files included in it
    3. Create a WXS file that can be used to build an MSI for the product layout in steps 1 and 2 above
    4. Create a WXS file that can be used to build an MSP for the patch
    5. Build a .wixout and .msi file for the initial product layout using Candle and Light
    6. Build a .wixout (and optionally a .msi file) for the upgrade product layout using Candle and Light
    7. Create a .wixmst (transform) file for the differences between the 2 layouts using Torch
    8. Build a .msp (patch) file that will apply to the .msi file created in step 5 using Candle, Light and Pyro

    If you are a setup developer interested in creating patches for your MSI-based installers, I encourage you to check out Peter's blog posts for more detailed information about how to use new features in WiX v3.0 to create patches.

    <update date="7/17/2007"> Updated step 7 to indicate that the output file is a .wixmst file and not a standard Windows Installer .mst file </update>

     

  • Aaron Stebner's WebLog

    June 2007 Cumulative Update for Media Center for Windows Vista available for download

    • 0 Comments

    While I was on vacation, a new cumulative update package for Windows Vista Media Center was released.  This update is called the June 2007 Cumulative Update for Media Center for Windows Vista and is also known as KB935652.  It is available for download in x86 and x64 versions.

    The June 2007 Cumulative Update includes the following fixes:

    • All of the fixes previously included in the April 2007 Cumulative Update
    • Media Center may not correctly configure an ATSC/NTSC combo TV tuner (KB929011)
    • Video playback may stop when resizing the main Media Center window (KB932753)
    • Audio may not work within Media Center after waking the computer from standby (KB931967
    • An update to the digital cable card component to improve interactions between the digital cable tuner, the CableCARD, and Media Center
    • Several bug fixes for the Media Center platform to help Media Center applications

    Here are some links for the June 2007 Cumulative Update:

Page 1 of 1 (12 items)