"Setup.msi"... Fails to Install .NET Framework 3.5 SP1 from local drive! RRS feed

  • Question

  • I was unable to install Framework 3.5 SP1 via Window's Installer from the local drive, without accessing the Internet.  Please note... I'm talking about the "Windows Installer", and not the "One-Click Installer".

    I posted all the relevant info on a different thread, where a response was given (see David's response below) but that whole thread was closed before I had a chance to say "IT DIDN'T WORK!!!".  I followed David's recommendation, changing the framework launch condition to look for framework 2 instead of framework 3.5.  The setup program managed to install framework 2.5 without calling the Internet... but guess what... IT DID NOT INSTALL FRAMEWORK 3.5!!!  Why am I not surprised?  Now, could somebody please tell me how Microsoft is going to get this problem solved and working?  This is getting ridiculous.

    Oh, and please stop marking threads as "answered" before the people with questions have confirmed that the claimed "answer" actually works.  It's a waste of our time to open a new thread just to pick up where the other thread left off.

    ---------------Message Begin-----------------------------

    Okay, the bootstrapper isn't showing that UI, it's the actual setup.msi, it's the .NET Frameworks Launch Condition that's doing that.

    The bootstrapper log seems to be indicating that the detection registry key is set as expected, so at this point, I don't fully understand why the launch condition is blocking, it would seem it should allow the install since the check is for NetFx 3.5, and the boostrapper is detecting/installing 3.5 SP1.

    However, we might be able to work around this problem by changing the version of the .NET Frameworks launch condition. To do this:
      Open the Launch Conditions Editor
      Select the .NET Frameworks launch condition
      Set the Version property to 2.0.50727

    Rebuild and try again.  This should be safe if you are always using the bootstrapper to install your application, since the boostrapper effectively does the 3.5 check.

    I hope this helps.

    David Guyer - Deployment Technologies Group PM
    ---------------Message End-----------------------------

    Monday, October 6, 2008 3:10 AM

All replies

  • Hello,

           Firstly, if you think the reply which is marked as answer did not help you out, you could just unmark the answer and go on to ask some further questions.   We will be glad to help.  

           Then, I searched your other threads.  And I found that the closed thread answered by David, is created by another community member.   You know MSDN forum policy tells us, the community members and all the moderators will only handle one question from one community member in one thread.   If other members have the same questions, new thread could be created here.   If you are the creator of the thread, you could determine which reply could be marked as answer.  

           You can see David is very warm-hearted, and he followed up your several questions in other member’s thread.  Then the owner of the thread marked David’s reply as answer and closed the thread.   Of course in closed thread, you could still go on ask David.   He is really an expert.  

           You know, this forum queue is for.NET Framework setup, not for Setup Project.   If you want .NET Framework 3.5 installed without network access, you could download .NET Framework 3.5 SP1 full packages in this page.   Or for Setup Project problems, you could check this form queue:  ClickOnce and Setup & Deployment forum.  



    Best Regards,

    Please remember to mark the replies as answers if they help and unmark them if they provide no help.
    Tuesday, October 7, 2008 7:16 AM
  • Lowkus,

    I'm very sorry you are having dificulty.  I can assure we have tested this stuff many times, and I can't get the problem to occur when I test it.  I think that there's some detail that's causing this to occur for you, and we just haven't identified it yet.

    Can you provide a clearer set of steps you are using?  For example: 

    What is in the Version property of the .Net Frameworks Launch Condition? 

    What packages are selected in the PreRequisites dialog?

    Which radio button is selected on the PreRequisites dialog?

    What filename to you double-click?

    What exact UI/error message?

    What is installed on your test machine that you are seeing this problem?

    Does this occur on just one specific computer, or more than one?

    In order to get this end-to-end scenario to work, you need to have the .NET Framework 3.5 selected in the Prerequisites dialog, and you need to run setup.exe, not setup?.msi.

    Hope this helps.  Good luck.

    David Guyer - Deployment Technologies Group PM
    Wednesday, October 8, 2008 4:58 AM
  • Lingzhi, I was not aware that I could unmark the thread from a state of answered.  That is good to know, and I will try that next time.  Thanks.

    David, Here are my answers to the questions you asked.  If they are not enough to solve the problem, let me know and I'll try to answer any other questions.  Also, I live very close to the Redmond campus - if you guys need me to drive over to show you my code setup, let me know.

    -The version property of the .net frameworks launch condition is currently set to "2.0.50727", but I originally tried it using version "3.5 SP1 Client" and I also tried using "3.0.4506" without success.

    -The packages selected in the PreReq dialog include: "Windows Installer 3.1" and ".NET Framework 3.5 SP1".

    -The radio button selected is "Download prerequisites from the same location as my application"

    -I've tried running the "Setup.msi" executable, as well as the "Setup.exe" file.  Neither would install the framework 3.5 sp1 correctly.

    -I've tested the compiled setup program on two different Windows XP (SP2) machines, each having .Net Framework 2 already installed but no later versions of the framework.  Neither machine would do a local install of Framework 3.5 SP1.

    -Below is info that explains some of the output from the setup program.  I had the "3.5 SP1 Client" selected for the framework launch condition when I was gathering these results...

    The files created by the deployment project ("Setup1") include the following:
    \DotNetFX35SP1\dotNetFX20 (files are in this directory)
    \DotNetFX35SP1\dotNetFX30 (
    files and subdirectories are in this directory)
    \DotNetFX35SP1\dotNetMSP (
    files and subdirectories are in this directory)
    \DotNetFX35SP1\TOOLS (
    files are in this directory)

    The install.log file shows the following...
    The following properties have been set:
    Property: [AdminUser] = true {boolean}
    Property: [ProcessorArchitecture] = Intel {string}
    Property: [VersionNT] = 6.0.1 {version}
    Running checks for package '.NET Framework 3.5 SP1', phase BuildList
    Reading value 'SP' of registry key 'HKLM\Software\Microsoft\NET Framework Setup\NDP\v3.5'
    Read integer value 1
    Setting value '1 {int}' for property 'DotNet35SP'
    The following properties have been set for package '.NET Framework 3.5 SP1':
    Property: [DotNet35SP] = 1 {int}
    Running checks for command 'DotNetFX35SP1\dotNetFx35setup.exe'
    Result of running operator 'ValueGreaterThanEqualTo' on property 'DotNet35SP' and value '1': true
    Result of checks for command 'DotNetFX35SP1\dotNetFx35setup.exe' is 'Bypass'
    '.NET Framework 3.5 SP1' RunCheck result: No Install Needed
    Launching Application.
    Application appears to be an application manifest
    Launching application manifest via dfshim

    The exact intro behavior of the executed setup project is:
    1) A message box titled "Windows Installer" opens, showing the text "Preparing to install..."
    2) The message box closes, and then a new message box opens that reads: "This setup requires the .NET Framework version 3.5.  Please install the .NET Framework and run this setup again.  The .NET Framework can be obtained from the web.  Would you like to do this now?"
    3a) Clicking 'NO' will stop the setup project.
    3b) Clicking 'YES' will cause the program to close the message box, and then the setup program makes an attempt to communicate outside the firewall.  Specifically, "msiexec.exe" attempts to access "".
    4a) Denying the program's attempt to call out to the Internet causes the setup program to silently shut down.
    4b) Allowing the program's attempt to call out to the Internet causes the web browser to open showing the .NET Framework Downloads page.
    Wednesday, October 8, 2008 5:55 AM
  • I see a couple of problems that we should look at.

    According to the Install.Log file, the registry key indicating .NET Framework 3.5 SP1 is installed, is set.  As a result the bootstrapper is not installing it.  If that regkey/value indeed is set to '1', then this is the right thing.

    The steps you describe indicate that the .NET Frameworks Launch condition is not set to 2.0.50727, otherwise the version in the messagebox would say 2.0, not 3.5... the version displayed is pulled from that version.

    Honestly, I'm a little confused, since the .NET Frameworks Launch Condition should use the same registry key that the bootstrapper, it shouldn't be blocking the install if the bootstrapper is claiming it's already installed.  This is a pretty core scenario we've tested quite a bit, so something is a bit unusual.

    The Install.Log file indicates that you are doing a ClickOnce install.  The "application manifest" indicates that.  Is this the right log? :-)

    I'd start looking at these, in the order I showed.

    David Guyer - Deployment Technologies Group PM
    Thursday, October 9, 2008 5:02 AM