Install .NET Framework 3.5 on Windows 10

I have found that after performing a clean install of Windows 10 that sometimes .NET Framework 3.5 is not installed.  I have run into scenarios where even though I had 4..6 installed I still needed 3.5.

If you have a non domain computer the quickest way to install 3.5 is to open Programs and Features and click on Turn Windows features on or off.  This will open another where you can turn on .NET Framework 3.5.

If you are on a domain computer, specifically a domain that is using WSUS, then the above procedure will probably not work.  This is due to the fact that the above procedure uses Windows Update to install the program.  Since WSUS redirects the PC to a different server the install package is not available.  To install .NET Framework in this scenario you will need a windows 10 install disc.  Insert the disc into you drive and open a Command Prompt as an admin.  In the Command Prompt window type the following command and press Enter:

dism /online /add-package /packagepath:E:\sources\sxs\

Make sure to replace E with the drive letter of you device.

Windows 10 – 1607 WSUS Problems

Did you upgrade your Windows 10 PC to 1607 also known as the anniversary update, only to find that it won’t install updates from your WSUS server?  If so join the club.  After some research, it appears that Microsoft figured out the issue and put in in their September cumulative update KB3189866.

To get this update to my network computers I had 2 options.  Since I couldn’t  get the affected PC’s to retrieve updates from my WSUS server, I either had to install the update manually or have each PC download the patch from Microsoft’s update servers.   I chose to manually install the patch since I could not afford the bandwidth required to have each machine downloading updates from the internet at once.

Once I manually installed the KB3189866 update, each computer was able to contact my WSUS server, download the remaining updates and install them.

Group Policy Program Installation Registry

I have come across another reason why Windows will not install assigned programs in a Group Policy.  It thinks they are already installed!  I have had a few instances where a program was not installed and I could find no errors in the the event log files.  When I checked the registry there was already an entry for the program indicating that the program had already been installed via Group Policy.


Open regedit and go to the following path
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\AppMgmt

One there you will find an entry for each program you have assigned through Group Policy.  Find the entry for the program that you are having the issue with and delete it.  The computer should attempt to install the program again once the computer is rebooted.

Delete Sub-Directories And Files

I came across a situation where I wanted to delete all the files and sub-directories out of a a directory.  I wanted to leave my main directory and just delete every thing in it.

I tried using the del command but it does not remove sub-directories.  There is the rd command to remove directories, but it only removes directories that are empty.  The other problem with the RD command is that you need to know the name of the directory.  The solution was to script a file, which is fine because I wanted to schedule this job to run weekly.  I found a script on the Internet that did what I wanted but I had to modify it slightly.  Below is the script along with explanations in red.

echo off

REM Edit your folder path
set CAT=C:\path name
(Set the path of the folder you wish to empty out)

dir “%%CAT%%”/s/b/a | sort /r >> %TEMP%\files2del.txt
(This line scans the directory and saves a list of all sub-directories)
for /f “delims=;” %%D in (%TEMP%\files2del.txt) do (del /F /Q /a:h “%%D” & rd “%%D”)
(Deletes all hidden files and removes directory if empty)
for /f “delims=;” %%D in (%TEMP%\files2del.txt) do (del /F /Q “%%D” & rd “%%D”)
(Deletes all files and removes empty directory)
del /q %TEMP%\files2del.txt
(Deletes temporary list of sub-directories)

The only modification I made to the script was adding the line that deletes all the hidden files.  I had to do this because the original script would leave sub-directories with hidden Thumbs files.

Setting Java Security level in MSI

Starting with Java 7 Update 51, Java started blocking certain Java applications.  These applications were deemed outdated and a security risk by Java.  You can still get these to run by changing the security level of Java to allow these to run.  If you need to set the security level of many machines and are pushing Java out through Group Policy you can edit the msi file to push out the desired security setting.  Below are the setting you can add to the Property Table in the msi to change the security level to your needs.

  • On installation, the WEB_JAVA argument has the following effect:
    WEB_JAVA=1 enables Java in the browser
    WEB_JAVA=0 disables Java in the browser
  • On installation, the WEB_JAVA_SECURITY_LEVEL argument has the following effect:
    WEB_JAVA_SECURITY_LEVEL=VH sets the security level to very high
    WEB_JAVA_SECURITY_LEVEL=H sets the security level to high
    WEB_JAVA_SECURITY_LEVEL=M sets the security level to medium

You will need to set the WEB_JAVA_SECURITY_LEVEL=M to be able to run blocked Java applications.

Goup Policy Program Assignments Not Installing

After installing some newer Windows 7 computers I ran into a problem where several computers would not install program that were assigned through Group Policy.  The majority of these computers were at remote locations using slower network connections.  I knew that the computer was receiving the policy because I could perform a gpupdate /force and the computer would indicate that a restart was needed to install the program.  After checking the event logs of these computer I saw 2 different events.

Event 1129: The processing of Group Policy failed because of lack of network connectivity to a domain controller. This may be a transient condition. A success message would be generated once the machine gets connected to the domain controller and Group Policy has successfully processed. If you do not see a success message for several hours, then contact your administrator.

Event 1055:  The processing of Group Policy failed. Windows could not resolve the computer name. This could be caused by one of more of the following:
a) Name Resolution failure on the current domain controller.
b) Active Directory Replication Latency (an account created on another domain controller has not replicated to the current domain controller).

I figured out the issue was slow connectivity to the network, so I had to make a few changes in Group Policy accommodate for this.

1.  Computer Configuration > Policies > Admin Templates > System > Logon
Setting Name: Always wait for network at computer startup and logon
I changed this to enabled.

2.  Computer Configuration > Policies > Admin Templates > System > Group Policy
Setting Name: Startup policy processing wait time
I enabled this setting and set the wait time to 60 seconds.  This forces the computer to wait at least 60 seconds before moves on without network connection.

I had to make these changes on the local PC Group Policy using the gpedit.msc because these setting were not on our Server 2003 Group Policy. I would assume that these setting are in later versions of MS Server.

Network Printer Disappears

I have run into a problem where I install a networked printer on a computer as a local printer and once I reboot the computer the printer disappears.  I made sure the printer was available, and I could reinstall the printer, but as soon as I restarted the computer it would disappear again.

I realized the problem had to do with the share name.  Even though I was not sharing the printer through the computer I needed to have a share name on the printer.  Usually one is provided during the install, but I have found that occasionally the field is blank during the install process.  If one is not provided, usually all you have to do is click the share button.  Once you do this, a name usually appears.  Then just click Do not share printer.

Here is a screen shot of the install showing the share name blank.

As you can see once I click Share this printer a name is populated.  You can change this to whatever you want.

You can see that when I click on Do not share, the name stays populated.


I have had this problem on 3 different computers, and this fix has worked every time.

OpenOffice Java Is Defective Error

When attempting to use the letter wizard in OpenOffice an error occured indicating that  Java was defective. This issue appears to be a result of using Java 7.  Many forums I visited suggested downgrading Java to a version 6.  DO NOT DO THIS!  There is a better and easier way of resolving this issue.  You need to install Microsoft Visual C++ 2010 Restributable. 

The link at the time of this wrinting to download the C++ 2010 Library is:


Adobe Flash Player Error 2753

While trying to push out the 2 different Adobe Flash Player .msi install files via Group Policy, I noticed a few computers were not being updated by one or both of the installers.  I looked in the Event Viewer of these computers and found my error on the Applications tab.  The error was 2753: The file “InstallAX.exe” is not marked for installation.  I found the file name varied based on the system and which file or files were not installing.

The files names could be any of these:

You may also receive this error if you try to manually install the .msi file.  After a little research I found that this error is caused by some incorrect registry values for Adobe Flash Player.


Uninstall the current version of Adobe Flash Player.  It is best to uninstall both the plugin and the activex version if they are both installed, but I found if you are only having problems with the plugin or activex you only need to uninstall that version of it if you are careful when modifying the registry in the next step.

Open up the registry editor (regedit.exe), and navigate to HKEY_CLASSES_ROOTInstallerProducts.  The sub-keys in this registry key contains the installer registry settings the the software installed on the computer.

Before editing the registry, it is always best to make a backup in case you accidentally delete or change you didn’t mean to.

Every piece of software installed will be represented with a unique GUID.  Use the find function (CTRL+F) in this registry key only and search for “Adobe Flash”.  Delete the corresponding GUID key.  If you only unistalled the plugin or activex version pay attention that you only delete the keys associated with that version.  There could be more than one GUID entry that needs to be deleted so make sure to continue searching the entire HKEY_CLASSES_ROOTInstallerProductskey for “Adobe Flash” until you have deleted all the keys.

After you have deleted all the keys, close the registry editor.  Your Flash Player .msi file should now install correctly.

HP Laserjet Will Not Print Multiple Copies

This is a problem I have come across a few times.  What usually happens is that a user will try to print multiple copies of something but always just receives one.  This problem is caused by Mopier Mode being enabled by default.  Mopier Mode is supposed to minimize traffic by sending 1 copy to the printer. The printer is supposed to store the one copy and use it to produce multiple copies.  Most HP Laserjets do not have enough internal memory to do this, so only 1 copy is printed.

To disable Mopier Mode:
1.  Go to Devices and Printers
2.  Right click on your HP Laserjet printer
3.  Select Printer Properties
4.  Click on the Device Settings tab
5.  Scroll down to the bottom.  You may have to expand the Installable Options
6.  Click on Mopier Mode
7.  Select Disable in the selection box that appears
8.  Click Apply