Difference between revisions of "Microsoft .NET Framework"
(→Microsoft .NET Framework 3.5 SP1: More on uninstallation.) |
(→Microsoft .NET Framework 2.0 SP1) |
||
Line 100: | Line 100: | ||
<source lang="xml"> | <source lang="xml"> | ||
<package id="dotnet20" name="Microsoft .NET Framework 2.0"> | <package id="dotnet20" name="Microsoft .NET Framework 2.0"> | ||
− | <check type="uninstall" condition="exists" path="Microsoft .NET Framework 2.0" /> | + | <check type="uninstall" condition="exists" path="Microsoft .NET Framework 2.0 Service Pack 1" /> |
<install cmd='%SOFTWARE%\dotNET\NetFx20SP1_x86.exe /q /c:"install /q"' > | <install cmd='%SOFTWARE%\dotNET\NetFx20SP1_x86.exe /q /c:"install /q"' > | ||
<exit code="194" reboot="true" /> | <exit code="194" reboot="true" /> |
Revision as of 05:33, 1 April 2010
Contents
[hide]Offline installer not really offline
The offline installer will try to go online to get language packs if it decides you need them... You can disable this behaviour with the "/lang:ENU" flag.
Microsoft .NET Framework 1.1
This is a silent installer for Microsoft .NET Framework. Download here
<package id="dotnet112k" name="Microsoft .NET Framework 1.1">
<!-- Microsoft .NET Framework Version 1.1 Redistributable Package -->
<check type="file" condition="exists" path="%Windir%\Microsoft.NET\Framework\sbscmp10.dll" />
<install cmd='%SOFTWARE%\updates\common\enu\dotnetfx.exe /q /c:"install /q"' >
<exit code="194" reboot="true" />
<exit code="1603" />
<exit code="3010" reboot="true" />
</install>
</package>
Another way to run the .NET installer:
Extract the contents of dotnetfx.exe, and then invoke the install directly (this also saves a bit of time for the clients)
<package id="dotnet112k" name="Microsoft .NET Framework 1.1">
<!-- Microsoft .NET Framework Version 1.1 Redistributable Package -->
<check type="file" condition="exists" path="%Windir%\Microsoft.NET\Framework\sbscmp10.dll" />
<install cmd='%SOFTWARE%\updates\common\enu\install /q' >
<exit code="194" reboot="true" />
<exit code="1603" />
<exit code="3010" reboot="true" />
</install>
</package>
And Microsoft .NET Framework 1.1 Service Pack 1 (download here):
<package id="dotnet11sp12k" name="Microsoft .NET Framework 1.1 Service Pack 1">
<!-- Microsoft .NET Framework 1.1 Service Pack 1 -->
<check type="registry" condition="exists" path="HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v1.1.4322\SP" />
<install cmd='%SOFTWARE%\updates\common\NDP1.1sp1-KB867460-X86.exe /q /i' >
<exit code="194" reboot="true" />
<exit code="1603" />
<exit code="3010" reboot="true" />
</install>
</package>
Same for X64 system:
<package id="dotnet11sp12k" name="Microsoft .NET Framework 1.1 Service Pack 1">
<!-- Microsoft .NET Framework 1.1 Service Pack 1 -->
<check type="registry" condition="exists" path="HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\NET Framework Setup\NDP\v1.1.4322\SP" />
<install cmd='%SOFTWARE%\updates\common\NDP1.1sp1-KB867460-X86.exe /q /i' >
<exit code="194" reboot="true" />
<exit code="1603" />
<exit code="3010" reboot="true" />
</install>
</package>
Microsoft .NET Framework 2.0
Download link: Microsoft .NET Framework 2.0 Redistributable (x86).
Download link: Microsoft .NET Framework 2.0 SP1 Redistributable (x64).
<package id="dotnet20" name="Microsoft .NET Framework 2.0">
<check type="uninstall" condition="exists" path="Microsoft .NET Framework 2.0" />
<install cmd='%SOFTWARE%\updates\common\enu\dotnetfx2.exe /q /c:"install /q"' >
<exit code="194" reboot="true" />
<exit code="1603" />
<exit code="3010" reboot="true" />
</install>
</package>
Microsoft .NET Framework 2.0 language pack
Replace DEU with whatever language pack you will be installing:
<package id="dotnet20lp" name="Microsoft .NET Framework 2.0 Language Pack">
<check type="uninstall" condition="exists" path="Microsoft .NET Framework 2.0 Language Pack - DEU" />
<install cmd='%SOFTWARE%\updates\common\enu\langpackfx2.exe /q /c:"install /q"' />
</package>
Microsoft .NET Framework 2.0 SP1
Download link: Microsoft .NET Framework 2.0 SP1 Redistributable (x86).
Download link: Microsoft .NET Framework 2.0 SP1 Redistributable (x64).
<package id="dotnet20" name="Microsoft .NET Framework 2.0">
<check type="uninstall" condition="exists" path="Microsoft .NET Framework 2.0 Service Pack 1" />
<install cmd='%SOFTWARE%\dotNET\NetFx20SP1_x86.exe /q /c:"install /q"' >
<exit code="194" reboot="true" />
<exit code="1603" />
<exit code="3010" reboot="true" />
</install>
<remove cmd='msiexec /x {B508B3F1-A24A-32C0-B310-85786919EF28} REBOOT=ReallySuppress /l*v %temp%\netfx20sp1_uninstall_log.txt /qn' >
<exit code="194" reboot="true" />
<exit code="1603" />
<exit code="3010" reboot="true" />
</remove>
</package>
Microsoft .NET Framework 3.0
Download from: Microsoft .NET Framework 3.0 X86 redist
Download from: Microsoft .NET Framework 3.0 X64 resist
Download from: Microsoft .NET Framework 3.0 SP1 X86 redist
Download from: Microsoft .NET Framework 3.0 SP1 X64 resist
<package id="dotnet30" name="Microsoft .NET Framework 3.0" revision="1" priority="900" >
<check type="uninstall" condition="exists" path="Microsoft .NET Framework 3.0" />
<install cmd='%SOFTWARE%\updates\common\dotnetfx3.exe /q /norestart' >
<exit code="194" reboot="true" />
<exit code="1603" />
<exit code="3010" reboot="true" />
</install>
</package>
Microsoft .NET Framework 3.5 SP1
Download from http://www.microsoft.com/downloads/details.aspx?FamilyId=AB99342F-5D1A-413D-8319-81DA479AB0D7 (choose/change your language and scroll down to "To download the full package, rather than the bootstrapper, click on the link below: .NET Framework 3.5 Service Pack 1 (Full Package)".
<package id="dotnet35" name="Microsoft .NET Framework 3.5 SP1" revision="1" priority="900" >
<check type="uninstall" condition="exists" path="Microsoft .NET Framework 3.5 SP1" />
<install cmd='%SOFTWARE%\updates\common\dotnetfx35.exe /q /norestart' >
<exit code="194" reboot="true" />
<exit code="1603" />
<exit code="3010" reboot="true" />
</install>
<remove cmd='MsiExec.exe /qn /X{CE2CDD62-0124-36CA-84D3-9F4DCF5C5BD9}' />
</package>
Or, an alternative method for the remove line, is to use the string reported in the HKLM\Software\Microsoft\Windows\CurrentVersion\Uninstall key. In fact that does not report the {CE2CDD62-0124-36CA-84D3-9F4DCF5C5BD9} GUID, but states that the uninstallation string is:
"C:\WINDOWS\Microsoft.NET\Framework\v3.5\Microsoft .NET Framework 3.5 SP1\setup.exe"
That would bring up the interactive installation/uninstallation/repair screen so we should use it with the following parameters:
/q /uninstall /norestart (more command line switches are available executing the setup with /?.)
So the remove line could as well be:
<remove cmd='"%WINDIR%\Microsoft.NET\Framework\v3.5\Microsoft .NET Framework 3.5 SP1\setup.exe" /q /uninstall /norestart'/>