Aaron Stebner's WebLog

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

Possible workaround for RGB9RAST install failure when deploying the .NET Framework 3.0 or 3.5

Possible workaround for RGB9RAST install failure when deploying the .NET Framework 3.0 or 3.5

  • Comments 6

I have heard from a few folks recently (such as this blog comment and this forum post) who have run into troubles installing the RGB9RAST component that is a prerequisite for the .NET Framework 3.0, 3.0 SP1, 3.5 and 3.5 SP1 on Windows XP and Windows Server 2003 operating systems.  There is a specific issue in the RGB9RAST .msi that can cause it to fail in some specific conditions, and I wanted to describe how to diagnose and work around this issue in case anyone else runs into a similar error in the future.

How to diagnose this issue

If you are encountering this particular RGB9RAST installation issue, you will see an error message like the following by searching for the string return value 3 in the verbose .msi log file for the RGB9RAST component (located at %temp%\dd_rgb9rast*.txt):

MSI (s) (6C:D0) [10:41:11:075]: Product: RGB9RAST -- The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2103. The arguments are: 26, ,

This type of error can occur during .NET Framework 3.0, 3.0 SP1, 3.5 and 3.5 SP1 setup on Windows XP and Windows Server 2003.  Starting with Windows Vista, the RGB9RAST components are available as a part of the OS, and so the RGB9RAST .msi does not need to be installed on Vista or higher and this error will not be seen there.

How to work around this issue

If you encounter the above error while attempting to install the RGB9RAST .msi as a part of .NET Framework 3.0, 3.0 SP1, 3.5 or 3.5 SP1 setup on Windows XP or Windows Server 2003, then I suggest trying to manually install the RGBRAST9 .msi with the following command line syntax before running .NET Framework setup:

msiexec /i RGB9RAST_x86.msi /qn ALLUSERS=1 REBOOT=ReallySuppress

After you install the RGB9RAST .msi manually, you can run .NET Framework setup and it will detect that the system already has RGB9RAST installed and it will skip attempting to install it and proceed to install the remaining .NET Framework components that are needed on your system.

Note – you can use the instructions in the .NET Framework 3.0 and 3.5 deployment guides to download the .NET Framework setup package and extract the RGB9RAST .msi needed for the above command line.  Here are the locations of the deployment guides:

Root cause of this issue

The RGB9RAST .msi does not set the ALLUSERS property by default.  That can cause problems when deploying the .NET Framework 3.0 or 3.5 from some types of deployment software, particularly deployment software that does not run in the context of a logged in user.  Specifically passing in ALLUSERS=1 on the command line when deploying the RGBRAST .msi will force it to install as a per-machine .msi, which is the appropriate way to install this .msi because the payload it installs goes to a per-machine location.

  • it seems as if the package of .net 3.5 sp1 has a lot of issues (one of them is the above and the other related to silent installation that can fails randomly - open ticket with microsoft),

    Is Microsoft planning to fix this issue in a new package or sattle with w/a ?

    thanks

  • Hi Ran Davidovitz - I'm sorry for the hassles that these issues have caused for you.  Microsoft is always working to improve our products and fix issues.  The upcoming .NET Framework 4 release will have many improvements to the setup and deployment process to fix issues that have been found with .NET Framework 3.5 and 3.5 SP1 setup.

  • Thanks for the update, are you going to share  the improvements that were made to te new package?

  • Hi Ran Davidovitz - The majority of the work is focused on robustness and reliability of the install process.  Also, the .NET Framework 4 release is a new side-by-side version with a new CLR.  That means there will not be a need to install 2.0, 3.0 and 3.5 like in the past.  The payload was refactored to make the download size smaller, and to enable a smaller Client version for rich client applications and a Full version for server applications.  I will talk to the folks working on the installer technology for the .NET Framework 4 and see if I can post some more specific details on my blog in the near future as well.  If you have any specific questions while trying out the .NET Framework 4 beta, please don't hesitate to post additional comments and ask.

  • Hi!

    I am trying to install the .NET 3.5 on a TabletPC and I have the problem with the RGB9RAST.

    I have followed your suggestion and I have installaed the RGB9RAST before installing the dotnetfx35.exe using msiexec /i RGB9RAST_x86.msi /qn ALLUSERS=1 REBOOT=ReallySuppress sintax.

    How can I check if the RGB9RAST is installed correctly?

    My problem is that the RGB9RAST installation returns ExitCode equal to zero but when I install the dotnetfx35.exe the installation fails with this error: RGB is not installed.

    For this operation I have developed a C# application that uses the System.Diagnostic.Process.

    I must run this application with a windows user that it is not an administrator user so I set some properties of my System.Diagnostic.Process for running with the administrator credential.

    This C# application install the following application using the System.Diagnostic.Process configured with administrator credential:

    - windows xp sp2;

    - windows installaer 3.1 (than reboot the TabletPC);

    - rgb9rast_x86.msi (the System.Diagnistic.Process returns zero);

    - dotnetfx35.exe with /q /norestart

    - SSCERuntime-ENU-x86.msi (Sql Compact Edition 3.5SP1);

    Only the installation of dotnetfx35.exe fails with the error describe before.

    Please, could you help me on this issue?

    Have you any ideas?

    Thank you very much!

    Best regards,

    Mauro

  • Hi Mauro.bisigato - Normally, if the installation process for a component returns zero, the installation is successful.  It sounds like something isn't being installed correctly in your case though.  I listed the logic used by .NET Framework 3.5 setup to decide whether or not each of its prerequisite components is installed in the blog post at http://blogs.msdn.com/astebner/archive/2008/07/13/8729636.aspx.

    For RGBRast, it checks that the file version of %windir%\system32\rgb9rast_2.dll >= 9.15.735.0.  Can you check and see if you have that file and if so, what the version of it is?

    Also, could you use the tool described at http://blogs.msdn.com/astebner/archive/2007/11/21/6458047.aspx to gather your .NET Framework 3.5 setup log files, post them to a file server (such as http://skydrive.live.com), then reply here with a link that I can use to download the logs and take a look to see if I can figure out what is happening on your system in this scenario?

Page 1 of 1 (6 items)
Leave a Comment
  • Please add 3 and 8 and type the answer here:
  • Post