Microsoft KB Archive/907755

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

Article ID: 907755

Article Last Modified on 12/2/2005

-

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:  Open the Packages folder that is in the following location:

\SDK\v2.0\Bootstrapper\

The Packages folder contains several folders that are called prerequisite package folders. 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. 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.</li> 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.</li></ul> </li> 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.</li> Rebuild and then distribute the application.</li></ol>

<div class="status_section">

STATUS
Microsoft has confirmed that this is a bug in the Microsoft products that are listed in the &quot;Applies to&quot; section.

<div class="moreinformation_section">

MORE INFORMATION
Every folder in the \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.

Additional query words: ClickOnce deployment Bootstrap bootstrap

Keywords: kbbug KB907755

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.