BUG: In Visual Studio 2005, you may receive a "Cannot write the file instmsia.exe to the DotNetFX directory" error message if you try to distribute an application to a Web server where UNIX or Linux is the operating system (907755)



The information in this article applies to:

  • Microsoft Visual Studio 2005 Express Edition
  • Microsoft Visual Studio 2005 Professional Edition
  • Microsoft Visual Studio 2005 Standard Edition

SYMPTOMS

In Microsoft Visual Studio 2005, if you try to distribute an application to a Web server where UNIX or Linux is the operating system, the installation fails. You may receive an error message that is similar to the following:
Cannot write the file instmsia.exe to the DotNetFX directory.

CAUSE

Microsoft Windows Installer in Visual Studio 2005 creates the dotnetfx folder on a remote shared hard disk drive or on a remote Web site. Note that the dotnetfx folder name is in lowercase letters. Windows Installer in Visual Studio 2005 also writes the instmsia.exe file to the DotNetFX folder. Note that the DotNetFX folder name is in both lowercase and uppercase letters. The UNIX operating system and the Linux operating system use case-sensitive criteria for file names and for folder names.

On a remote shared hard disk drive or on a remote Web site where the operating system is case insensitive, Windows Installer in Visual Studio 2005 does not distinguish between the dotnetfx folder name and the DotNetFX folder name. Windows Installer in Visual Studio 2005 can successfully write the instmsia.exe file to the dotnetfx folder.

On a remote shared hard disk drive or on a remote Web site where the operating system is case sensitive, Windows Installer in Visual Studio 2005 distinguishes between the dotnetfx folder name and the DotNetFX folder name. Windows Installer in Visual Studio 2005 cannot successfully write the instmsia.exe file to the DotNetFX folder, because the DotNetFX folder does not exist.

WORKAROUND

To work around this problem, follow these steps:
  1. Open the Packages folder that is in the following location:

    Visual Studio 2005 Installation Folder\SDK\v2.0\Bootstrapper\

    The Packages folder contains several folders that are called prerequisite package folders.
  2. Rename any prerequisite package folder that has a name that contains uppercase letters.

    Note All the prerequisite package folders must have names that contain lowercase letters only.
  3. Open the Product.xml file and the Package.xml file in Visual Studio 2005 or in Notepad.

    Note Each prerequisite package folder contains the Product.xml file and the Package.xml file. The Package.xml file may be in a subfolder that has the name of your locale, such as en-US.

    The Product.xml file and the Package.xml file may contain two types of subfiles. The two types of subfiles are redistributable files and external check files. Each subfile has a corresponding source file that is in one of the following locations:
    • The corresponding source file may be located in the same folder as the subfile. This location is always the correct location when the subfile is an external check file.
    • The corresponding source file may be located on the destination Web server.
    • The corresponding source file may be located on a central server on the same network as the destination Web server.
    • The corresponding source file may be located on a third-party Web site. This location is the correct location when the subfile is a redistributable component that was created by a vendor. For example, the Microsoft .NET Framework 2.0 is a redistributable component that was created by Microsoft. When the .NET Framework 2.0 is included in the redistributable files, the corresponding source file for the .NET Framework 2.0 is located on the Microsoft Web site.
  4. Rename any subfiles that do not exactly match the case of the corresponding source files. The new name must exactly match the case of the corresponding source file. Save the changes.
  5. Rebuild and then distribute the application.

STATUS

Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the "Applies to" section.

MORE INFORMATION

Every folder in the Visual Studio 2005 Installation Folder\SDK\v2.0\Bootstrapper\Packages folder corresponds to a prerequisite package folder. Each prerequisite package folder contains the following files:
  • The Product.xml file contains nonlocalized information about the prerequisite package folder.
  • The Package.xml file contains localized information for the prerequisite package folder. For example, the Package.xml file may contain error strings. The Package.xml file may be in a subfolder that has the name of your locale, such as en-US.
  • The Eula.txt file is an optional file that contains the usage agreement for the redistributable files. The Eula.txt file may be in a subfolder that has the name of your locale, such as en-US.
  • The redistributable files are optional files. The redistributable files are installers for redistributable subpackages. Examples of redistributable subpackages are the .NET Framework 2.0 and Microsoft SQL Server 2005 Express Edition.
  • The external check files are optional files. The external check files are executable files that are used to examine the state of a remote shared hard disk drive or of a remote Web site.

Modification Type:MajorLast Reviewed:12/2/2005
Keywords:kbbug KB907755 kbAudDeveloper