Help Center

Follow

.NET 3.5 SP1 is not installed on the target (But it really is!)

We had a user that wrote to us stating that Inventory was reporting a computer couldn't scan and giving the following error.

".NET 3.5 SP1 is not installed on the target"

She told us that .NET 3.5 SP1 was indeed installed on the target system.

We responded with:

"If .NET 3.5 SP1 is already on the target computer then .NET may have become corrupted. You may need to attempt a repair .NET. This is a fairly rare occurence but we have seen it happen."

The user responded with

"thanks folks, I did a repair on .net 3.5 and it worked!"

 

Was this article helpful?
0 out of 0 found this helpful
Have more questions? Submit a request

28 Comments

  • 0

    Hello @all,

    ".NET 3.5 SP1 is not installed on the target" appears to be a common issue. I just purchased both (PDQ Deploy and PDQ Inventory) and I tried both on my network (Windows/Linux servers and 300 Windows clients).

    While PDQ Deploy works great, PDQ Inventory gives me a hard time to scan certain Windows clients. All clients on my network are Windows 7 64 bit installations and I verified .Net 3.5 SP1 on each computer. I keep getting the error ".NET 3.5 SP1 is not installed on the target" for half of my Windows installations. I disabled and enabled the .NET Framework 3.5.1 feature in order to perform a repair of .NET 3.5. SP1 but to no avail.

    I also isolated an affected machine from the rest of the network and disabled virus scanner and firewall - the error message is the same  ".NET 3.5 SP1 is not installed on the target".

    I there anything else I can check?

  • 0

    Hi Marc,

    Will you try to install .NET 3.5 SP1 on one of these targets via PDQ Inventory? Go to Preferences and select Download .NET Now from the .NET Installation pane?

    Inventory-NETInstall.png

    After the download is complete open one of these computers and select Install .NET and Scan from the File menu.

    Does the installation (and subsequent scan) complete successfully? If it fails did it fail with an error 1603?

  • 0

    This error can come up in one of two ways.  The first way is that the scanner looks in the registry to see if the .NET 3.5 key is there.  It's located at:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5

    It will have a value called SP set to 1.  Can you verify that the registry value is there?

    The second way it can happen is if the the scanner fails with one of a couple of different error codes which indicate that the right version of .NET is not installed.  You can also verify this by trying to run a .NET application, such as the Remote Repair tool, on the target computer.  If it fails with a message about not having .NET then it could mean that .NET isn't installed correctly.

  • 0

    You can also check out Aaron Stebner's .NET Verification tool, which is free and can be downloaded here:

    http://blogs.msdn.com/astebner/pages/8999004.aspx

    It also has the ability to run silently, so you can deploy it with a script for a "mass check". Read more at the URL above.

  • 0

    Thanks for all your help.

     

    Here is what I did so far:

    • used Aaron Stebner's .NET Verification tool (result: .Net 3.5 SP1 is installed)

    • checked registry (result: SP value is set to 1 for HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5)

    • checked file system (result: .net 3.5 SP1 installation path is C:\Windows\Microsoft.NET\Framework64\v3.5)

    • tried to reinstall .NET 3.5 SP1 with and without PDQ Inventory (result: same error)

    • disabled .net framework 3.5.1 in Windows 7 features -> reboot -> enabled .net framework 3.5.1 in Windows 7 features -> reboot (result: same error)

    • performed sfc /scannow (result: same error)

    • removed virus scanner and disabled firewall (result: same error)

    My next step will be a redeployment of Windows 7 (just for one machine of course). I hope the result will be the same because if a OS redeployment of 150 desktops is the only solution for this problem, I will have some long nights coming up.

  • 0

    I have one more thing to comment on this. Once I came around a weird problem simillar to this, where an application (which needed the .NET Framework) claimed, that the framework is not installed, which it was. After runnig the setup manually, the app downloaded some resource files so it looked like the only "missing" components where those language dependant resources.

    What is the OS's primary language? Is there some MUI Lanaguae pack installed? What are the regional settings?

    Am I right that you are (or the computers) on a non english OS?

    If so, try to download the appropriate language pack from http://www.microsoft.com/en-us/download/details.aspx?id=21891

  • 0

    OS language is English. Regional settings are U.S. All systems are located in the USA 

  • 0

    Then there are two other suggestion which can by tried out:

    a) if you are running Spy bot - disable it temporarily

    b) place your login in the local administrators group of the computer.

    The 1603 error is very generic  and over all means that something is broken

    Check Aaron's "How to locate the cause of error code 1603 in a verbose MSI log file" at http://blogs.msdn.com/b/astebner/archive/2005/08/01/446328.aspx

    He is really a hard core guy in .NET so, you might find other possible solutions on his blog.

    As a last resort use his NET Framework Cleanup Tool http://blogs.msdn.com/b/astebner/archive/2008/08/28/8904493.aspx 

    But be carefull, do a full backup of the computer.

  • 0

    Btw have you checked the %temp%\setupverifier_errors_*.txt for errors? (the error results of the setup verifier)

  • 0

    Thanks!

    I have been reading his blog for about 3 hours now.

    I have no problems to install MSI packages and I can't use his NET Framework Cleanup Tool because .NET 3.5.1 is a OS component of Windows 7

    I'll try a reinstall tomorrow when I'm back in the office.

    Happy Labor Day to everyone.

  • 0
  • 0

    Ehm, sorry... It just disables the compoennt, you are right. I was too premature...

  • 0

    Setupverifier_main:

    [09/03/12,11:57:01] Beginning of new SetupVerifier activity logging session

    [09/03/12,11:57:01] Activity log file location: C:\Users............

    [09/03/12,11:57:01] Error log file location: C:\Users...............

    [09/03/12,11:57:01] Build created on August 21, 2012

    [09/03/12,11:57:01] Detected operating system: Windows 7 (x64)

    [09/03/12,11:57:01] Install state for .NET Framework 1.0: not installed.

    [09/03/12,11:57:01] Install state for .NET Framework 1.1: not installed.

    [09/03/12,11:57:01] Install state for .NET Framework 2.0: installed with service pack 2.

    [09/03/12,11:57:01] Install state for .NET Framework 3.0: installed with service pack 2.

    [09/03/12,11:57:01] Install state for .NET Framework 3.5: installed with service pack 1.

    [09/03/12,11:57:01] Install state for .NET Framework 4 Client: installed with no service packs.

    [09/03/12,11:57:01] Install state for .NET Framework 4 Full: not installed.

    [09/03/12,11:57:01] Install state for .NET Framework 4.5: not installed.

     

    Setupverifier_erros:

    [09/03/12,11:57:01] Beginning of new SetupVerifier error logging session

    [09/03/12,11:57:01] Activity log file location: C:\Users\SAMBA~1.ANE\AppData\Local\Temp\setupverifier_main_09-03-12_11.57.01.txt

    [09/03/12,11:57:01] Error log file location: C:\Users\SAMBA~1.ANE\AppData\Local\Temp\setupverifier_errors_09-03-12_11.57.01.txt

    [09/03/12,11:57:01] Build created on August 21, 2012

    [09/03/12,11:57:01] Detected operating system: Windows 7 (x64)

    [09/03/12,11:57:01] Windows directory: C:\Windows

    [09/03/12,11:57:01] System directory: C:\Windows\system32

    [09/03/12,11:57:01] Program Files directory: C:\Program Files (x86)

    [09/03/12,11:57:01] Common Files directory: C:\Program Files (x86)\Common Files

    [09/03/12,11:58:25] SetupVerifier exiting with return value 0

  • 0

    So no errors...

    Can you do the following steps:

    a) login localy to the system

    b) close everything you can close, including antivirus & co.

    c) run PDQ Inventory from server

    if it fails

    a) check and start the remote registry service

    b) do a "Netsh firewall set service RemoteAdmin" to allow WMI admin access

    try PDQ Inventory

  • 0

    ah sorry thats the XP version, here is the Win7 command

    netsh advfirewall firewall set rule group="Windows Remote Management" new enable=yes

    Btw do you have any .NET related errors in application an system evetn logs?

  • 0

    I really appreciate your help. I owe you a beer.

    However, I've tried what you suggested. 

    a) login localy to the system

    b) close everything you can close, including antivirus & co.

    c) run PDQ Inventory from server

    It didn't work. ".NET 3.5 SP1 is not installed on the target"

    I also enabled Remote Registry Service although I don't really understand why this service is necessary for PDQ Inventory. PDQ Inventory can scan approx. 100 other computers with no problem and Remote Registry Service is disabled on those machines. WMI access is enabled. I can scan this machine with Spiceworks no problem. I also use WMIC to connect to the affected computer.

    I'll do a reinstall tomorrow, but I need to come up with a different solution for the rest of the machines.

     

  • 0

    ;-) thanks for the offer, a non alcoholic beverage will do it too.

    Remote registry is and WMI are often used for data collection and these two things changed in Win7. Its jus one idea where the problem can be. You can safely revert the settings back. Enabling remote registry is necessary if you want to access event logs remotely.

    I take care for more than 60 computers in diffrent companies and I never had such problem as you've described.

    The last thing to do is:

    a) login to the PC and end all apps, AV etc.

    b) start process monitor http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx

       (remember, its starts logging stright up... just the first run give a licensing popup)

    c) start PDQ Inventory scan task on the computer

    d) stop process monitor

    Now you can save the log for later and start reviewing it.

    You can filter it by process name. Look for keywords like error, fail, denied. Everything else is just experience.

    If its ok for you, I might take a look at it. Remember I am just a AA customer like you are, not AA support.

  • 0

    AA customer sounds kind of funny but, joking aside, I really appreciate your time and effort.

  • 0

    You are welcome.

    Create the log tomorrow and we'll see. I have to finish my admin stuff for today and go to bed... FYI its 3:10 AM here in Europe ;-)

  • 0

    Hallo again,

    I just wanted to give a brief update.

    I've reinstalled the computer (Windows 7 Enterprise 64bit). .NET Framework 3.5.1 feature is enabled.  The firewall is off, no virus scanner installed. The error message is still the same  ".NET 3.5 SP1 is not installed on the target"

  • 0

    SelfMan, excellent ideas, thanks.

    MOB, we need to narrow down which condition is the one that is causing the error.   Can you try running RemoteAdminRepair.exe on the target computer and see if it fails and with what error message?  It's a .NET 3.5 application and should fail for the same reason that the scanner is failing.

  • 0

    Thanks Adam.

    I know it sounds crazy but RemoteAdminRepair.exe gave me the following message: 0 items found needing repair

    But here is the thing, after I re-registered the .NET Framework Assemblies PDQ Inventory is able to scan the computer. 

  • 0

    That is odd because RemoteAdminRepair.exe shouldn't have even gotten that far, it should have errored out before it started.  But it may have been due to an assembly that the scanner uses that RemoteAdminRepair doesn't use, and you fixed it by registering it.  

    What method did you use to re-register the assemblies?  This sounds like something we'll want to add to our documentation.

  • 0

    I used regasm.exe from .NET 2.0 SDK. At this point I have no idea what really solved the problem. I tried this completely out of desperation. 

  • 0

    Actually, that may make some sense.  The scanner does a lot of things with COM libraries that RemotAdminRepair.exe doesn't do (such as connect to Active Directory and WMI).  There are 3 error codes which we interpret to mean that .NET isn't installed, and one of them may also occur when there's a problem with the .NET -> COM interface.  We'll do some investigation on this, but we may be able to fix it by running regasm.exe (or its equivalent API) ourselves when we see one of these codes.  

  • 0

    @MOB

    It might be a great help if we had a BeforeAfter log from a system with problems. To do it, you need only NirSoft's RegFromApp tool.

    http://www.nirsoft.net/utils/reg_file_from_application.html

    RegFromApp monitors the Registry changes made by the application that you selected, and creates a standard RegEdit registration file (.reg) that contains all the Registry changes made by the application. You can use the generated .reg file to import these changes with RegEdit when it's needed.

    Check the command line switches, mainly /RunProcess <exe filename>

    After the reg is created, use RegMerge ( http://bitsum.com/regmerge.php) on a broken system with identical configuration and compare the reg file against the live registry. The resulting list should be interesting.

  • 0

    FYI I am talking about changes done by regasm.exe. (don't forget to disable all unnecessary stuff)

  • 0

    One more idea, is it possible, that the systems experiencing the dotNET trouble are missing the VC2005, VC2008 runtimes?

Article is closed for comments.