I am trying to install .net framework 4.0 using the deployment toolkit but when the package goes to run after the O/S is installed it freezes during the exe extraction and never gets to the install. I have tested the command line and switches and it works fine running from a command prompt but will not run using the deployment toolkit. Any help would be appreciated.
This post is speculation, but:
I have seen similar issues to this with other MS Installs, this KB should help explain why (this is assumption at this point, i have not personally tinkered with .NET 4.0 installation yet, and do not know that it suffers from similar issues.)
Because the MDT is one of these "bootstrappers" , this can cause the hangups. The solution i currently use is instead of adding the application as an outright install, add it to copy to the local harddrive tmporarily, then add a runonce registry key and tick the "Reboot after installation" option for the app. The reg key will apply the runonce for the install -> system will reboot -> install the app for all users BEFORE windows logs fully on -> then windows will log on and continue as normal :)
This *does* depend on the app. but for .net (as it applies same settings to all profiles) it shouldn't be an issue. i actually came across this due to the app noted in the KB# i posted :)
May be right with the bootstraper hypothesis, Unfortunately installing it using runonce is not an option as it is a prerequisite that needs to be install before a number of other applications.
Need to find a way to get this working within the MDT environment.
Sorry miss read Dustin M's posting and thought he was talking about having it run once after the mdt deployment completed.
Will try setting this up.
Aftere the system reboots and starts installing the framework do I need to do anything to prevent the litetouch from continuing the rest of the application installs before the framework is done installing?
I don't know if this will help you, but we use CMD files for the applications. The CMD that installs .NET 4.0 for us is:
echo Installing MS .NET Framework 4.0. . .
"%~dp0dotNetFx40_Full_x86_x64.exe" /passive /norestart /log %windir%\debug\MSDOTNETFramework4.log
After this application installs, a restart step occurs before installing dependent apps. This works great for us with Windows 7 Ent x64.
The CMD is in the application folder and is the 'Quiet Install command.' Since the EXE is a line in the CMD, the CMD will not proceed (exit) until the EXE returns an exit code (3010 for reboot required). Once the exit code from the EXE is returned to the CMD, the CMD returns the exit code to the MDT script and the next step advances. The next step is a 'restart computer'
Was able to get this working without resorting to runonce. We had tried using .cmd script but that had originally failed to do problems with unc path processing issues specific to cmd. Took another look at it and got it working here are the details:
Created a folder on our application folder in DFS: \\company.com\Corp\Software\Applications\Microsoft\DotNETFramework4.0
Copied dotNetFx40_Full_x86_x64.exe to above folder and created deploynet4.cmd
CMD file: deploynet4.cmd
start /wait \\company.com\Corp\Software\Applications\Microsoft\DotNETFramework4.0\dotNetFx40_Full_x86_x64.exe /q /norestart /ChainingPackage ADMINDEPLOYMENT
MDT Application info
Application type: Application without source files or elsewhere on the network
Application name: .NET Framework
Command line: cmd.exe /c \\company.com\Corp\Software\Applications\Microsoft\DotNETFramework4.0\deploy_net4.cmd
Working directory: left this empty
Selected "Reboot the computer after installing this application"
Just came across this thread since I just encountered this problem. Here is an easy solution that doesn't require setting this up in DFS.
All you have to do is create a batch file (I named mine dotnet.cmd) and at a minimum put the line dotNetFx40_Full_x86_x64.exe /q /norestart in it.
For example, this is what's in my dotnet.cmd file:
TITLE Microsoft .NET Framework 4.0 Installation
echo Installing Microsoft .NET Framework 4.0
dotNetFx40_Full_x86_x64.exe /q /norestart
You just need the batch file and the .NET exe in the same folder and set Quiet install command: dotnet.cmd. This will take care of the silent install. If both files are in the same folder, you don't have to worry about the path.