394

This icon showed up in my taskbar notification area today and I cannot seem to get rid of it:

Windows 10 icon in the taskbar

Clicking on it displays the following screen:

"Get Windows 10" popup with an explanation that this is a free upgrade to Windows 10

So how do I disable or remove the "Get Windows 10" icon?

Mithical
  • 321

14 Answers14

273

If you just want to remove the tray icon until the next restart you can terminate the GWX.exe process using Task Manager.

To get rid of the icon permanently, uninstall KB3035583 which is responsible for these notifications: Control panel, windows update, installed updates, sort by name, "Update for Microsoft Windows KB3035583" (not a Security Update), uninstall, reboot.
(Alternative: open CMD and enter wusa /uninstall /KB:3035583)

When you're offered the same again via Windows Update remember to hide it.

After uninstalling, if remnants of the update's files are still in Windows\System32\GWX, just delete that directory, although first you may need to take ownership of it.

1

Jackdaw
  • 1,834
Karan
  • 57,289
59
  • Run Autoruns as Administrator, unhide Windows/Microsoft entries via Options
  • Search for gwx.
  • Disable the items that don't give an access denied message.

Autoruns screenshot

janv8000
  • 1,610
40

According to TechJourney, you can make a small registry change to prevent the application starting.

This registry key will stop Gwx from starting at boot:

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Gwx]
"DisableGwx"=dword:00000001

To create this:

  1. Run regedit.exe as an administrator.
  2. Create a key named Gwx within HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\.
  3. Create new dword value, named DisableGwx, with a value of 1.

Uninstalling and blocking the update from the system (as in other answers) is certainly a cleaner approach, if you don't intend to use it.

Jeeva
  • 1,462
33

The official answer from the FAQ:

Can I turn off the notifications?

Yes. Click “Customize” in the System Tray and turn off the Get Windows 10 app notifications in the menu that comes up.

But this is not very useful depending on your needs since the GWX.exe process is still running in the background. It simply shoves the icon in the overflow menu for the system tray. It seems silly since this isn't unique to the gwx application, it is part of the OS.

Also, as commenters have pointed out, unlike other icons this setting seems to revert after rebooting the system. Putting the system in sleep mode retains the setting however.

33

There are various ways to remove the GWX promotion "interactively" (in GUI mode).
However, I prefer to do it programmatically / the scripted way.

On my Win7 environments (in "workgroup" mode) I'm using the below scripts to achieve the following:

  • "uninstall" any suspect windows update
  • "hide" it from future update runs

"BlockWindows10.bat":

ECHO OFF
REM --- remember to invoke from ELEVATED command prompt!
REM --- or start the batch with context menu "run as admin".
SETLOCAL

REM --- (as of 2015-09-07):
REM  KB3035583 - GWX Update installs Get Windows 10 app in Windows 8.1 and Windows 7 SP1
REM  KB3021917 - Update to Windows 7 SP1 for performance improvements
REM  KB3012973 - Upgrade to Windows 10 Pro

REM --- no longer blocking:
REM  KB2952664 - Compatibility update for upgrading Windows 7
REM  KB2976978 - Compatibility update for Windows 8.1 and Windows 8
REM  KB3022345 - Telemetry [Replaced by KB3068708]
REM  KB3068708 - Update for customer experience and diagnostic telemetry

REM --- uninstall updates
echo uninstalling updates ...
start "title" /b /wait wusa.exe /kb:3021917 /uninstall /quiet /norestart
echo  - next
start "title" /b /wait wusa.exe /kb:3035583 /uninstall /quiet /norestart
echo  - done.
timeout 10

REM --- hide updates
echo hiding updates ...
start "title" /b /wait cscript.exe "%~dp0HideWindowsUpdates.vbs" 3021917 3035583 3012973
echo  - done.

echo ... COMPLETED (please remember to REBOOT windows, now)
pause
REM --- EOF

"HideWindowsUpdates.vbs" (Kudo https://serverfault.com/a/341318):

'// Inspired by Colin Bowern: https://serverfault.com/a/341318
If Wscript.Arguments.Count < 1 Then
    WScript.Echo "Syntax: HideWindowsUpdates.vbs [KB1] [KB2] ..." & vbCRLF & _
        " - Example1: HideWindowsUpdates.vbs 3035583" & vbCRLF & _
        " - Example2: HideWindowsUpdates.vbs 3035583 3012973"
    WScript.Quit 1
End If

Dim objArgs
Set objArgs = Wscript.Arguments
Dim updateSession, updateSearcher
Set updateSession = CreateObject("Microsoft.Update.Session")
Set updateSearcher = updateSession.CreateUpdateSearcher()

Wscript.Stdout.Write "Searching for pending updates..." 
Dim searchResult
Set searchResult = updateSearcher.Search("IsInstalled=0")

Dim update, kbArticleId, index, index2
WScript.Echo CStr(searchResult.Updates.Count) & " found."
For index = 0 To searchResult.Updates.Count - 1
    Set update = searchResult.Updates.Item(index)
    For index2 = 0 To update.KBArticleIDs.Count - 1
        kbArticleId = update.KBArticleIDs(index2)

        For Each hotfixId in objArgs
            If kbArticleId = hotfixId Then
                If update.IsHidden = False Then
                    WScript.Echo "Hiding update: " & update.Title
                    update.IsHidden = True
                Else
                    WScript.Echo "Already hiddn: " & update.Title
                End If          
            End If
        Next

    Next
Next
'// EOF

Notes:

  • Use at your own risk
  • Invoke the *.bat as "elevated"
  • Remember to reboot Windows after the script has completed
  • From time to time Microsoft releases a new revision of a particular update - it's then required to hide it again
  • Feel free to revise or extend the list of suspicious updates

Edit1:
To answer the question in the comments section: by "suspicious" update (in the context of the current superuser question) I mean any update that "just" tries to promote Windows 10.
As opposed to a "real" update for the current Windows OS: to fix security issues / particular malfunctions or improve / introduce certain functionality.

Edit2:
In addition you may want to add the following registry tweaks:

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Gwx]
"DisableGwx"=dword:00000001

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\OSUpgrade]
"ReservationsAllowed"=dword:00000000
Opmet
  • 577
  • 1
  • 5
  • 15
7

Many answers suggest simply hiding the icon (instead of disabling the ad program). Here is a more radical approach: Deny access to this ad program, so the system won't be able to run it.

[See update 3 below for an automated and improved version!]

Close or kill the ad program (if still running): Open the task manager (Ctrl + Shift + Esc), select "GWX.exe" and click "End Process".

Find the following file, right-click, Properties, Security:

C:\Windows\System32\GWX\GWX.exe

Edit the permissions, select "Deny" "Full control" for all listed users/groups (or remove them, add "Everyone" and deny full control to everyone).

Update:

It turns out that denying access to the GWX directory as described below does not prevent access to the files in that directory on Windows. So the the ad program GWX.exe is still executable and will be run.

Original post (changing permissions for GWX directory only):

Find the following directory, right-click, Properties, Security:

C:\Windows\System32\GWX

Edit the permissions (see below if grayed out), remove all listed permissions. Add "Everyone" and select "Deny" "Full control". You should now have a list ("Group or user names") with one entry ("Everyone") and all checkboxes in the "Deny" column should be checked.
Double-check that you are really editing the permissions for "GWX" (if not, click "Cancel" immediately to prevent damage). If so, confirm by clicking OK.

It you can't change the permissions (buttons disabled / grayed out), take ownership of the directory first. Open the "Command Prompt" as administrator (Start menu, All Programs, Accessories, right-click Command Prompt, "run as administrator"). Make sure you're in your "system32" directory (C:\Windows\system32>). Run the following command: takeown /f GWX /r /d y
You should then be able to change the permissions of the directory.

If it comes back, double-check the permissions. It seems, the owner is sometimes automatically added back to the list and given full permissions to the GWX directory. Go back to the security settings of that directory and remove entries that grant permissions (checkbox in Allow column).

Update 2:

It seems just changing the permissions of the GWX.exe file might be a bit unreliable. Windows may (apparently) replace that file after a while (probably after another update), at which point the ad will show up again. The new file will have default permissions, the modification is lost. A combination (removing permissions from that file as well as the parent directory) might work better.

Here is a (probably incomplete) list of updates that may try to (re)install this GWX downloader:

Update 3:

Here is a more complete approach. These commands can be copied into a command prompt which is running as administrator (look for "cmd" in the start menu, right-click, run as administrator) or they can be copied into a file that ends with ".bat", which can then be executed (right-click, run as administrator).

Note that Windows uses CRLF linebreaks, so before you copy the bat file to a Windows system, convert it using unix2dos (run unix2dos file.bat).

taskkill.exe /F /IM "gwx.exe"

takeown /f "%windir%\System32\GWX" /r /d y 

ECHO Y| CACLS "C:\Windows\System32\GWX" /C /G Administrators:F

del "C:\Windows\System32\GWX\*.exe"

ECHO Y| CACLS "C:\Windows\System32\GWX" /C /G Administrators:R

icacls "C:\Windows\System32\GWX" /deny Everyone:(CI)(OI)F

What it does:

  1. It kills the nagware process, if running.
  2. It takes ownership of the GWX directory in order to be able to modify its permissions.
  3. It grants administrators access to that directory in order to be able to modify it.
  4. It deletes all executable files in that directory, including GWX.exe (the nagware program).
  5. It changes the directory permissions for administrators to read-only.
  6. It denies access for everyone to that directory.

After a reboot, it should not reappear (leave a comment if it does).

Hopefully, this should prevent Windows from reinstalling the nagware into this directory.

Note: It appears that this mechanism may not be completely reliable, Windows might be able to reinstall GWX.exe in some cases. The commands listed above may have to be improved.

martineau
  • 4,573
basic6
  • 2,837
7

If there is a certain program on Windows which you don't want to be executed, just tell Windows about it.

Open a command prompt or PowerShell as administrator and run the following.

 reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\gwx.exe" /v Debugger /t REG_SZ /d "C:\Windows\System32\systray.exe" /f

This adds a new value debugger to the registy under the specified key.

This tells Windows whenever gwx.exe is started, to run something else instead. You could pick any small program that doesn't to anything. But most of them are console programs and that would result in a cmd.exe flashing briefly after logon. systray.exe just runs and quits.

If you ever want to allow gwx.exe to run again remove that value:

reg.exe delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\gwx.exe" /f

Microsoft can update and enable gwx.exe as often as they like, you will never see it until they change its name.

Microsoft is also pushing Windows 10 in Windows update, to turn that off run:

reg.exe add "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v DisableOSUpgrade /t REG_DWORD /d "1" /f

and to turn it back on, when you are ready to go 10:

reg.exe delete "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v DisableOSUpgrade /f

A reboot is required for this to affect the Windows update dialog.

6

For those who prefer to copy/paste commands rather than clicking around, run this in an elevated Command Prompt or from a .cmd batch file (as administrator):

Kill the GWX.exe task:

TASKKILL /IM GWX.exe /T /F

Disable it for future sessions:

REG ADD HKLM\SOFTWARE\Policies\Microsoft\Windows\Gwx /v DisableGWX /d 1 /f
mivk
  • 4,015
6

Quick way to get rid of Windows 10

To escape the forced upgrade, paste this into Notepad, save it as a .BAT file and run it from an elevated command prompt:


wusa /uninstall /kb:3068708 /quiet /norestart
wusa /uninstall /kb:3022345 /quiet /norestart
wusa /uninstall /kb:2952664 /quiet /norestart
wusa /uninstall /kb:2976978 /quiet /norestart
wusa /uninstall /kb:2977759 /quiet /norestart
wusa /uninstall /kb:3075249 /quiet /norestart
wusa /uninstall /kb:3080149 /quiet /norestart
wusa /uninstall /KB:3035583 /quiet /norestart

After doing this, restart your current version of Windows and hide the above mentioned updates.

Note that for every month, you may have to hide these updates as they are automatically getting shown again

Source

nixda
  • 27,634
5

The GWX Control Panel software can allow you to easily disable the Windows 10 icon in the notification area among other Windows 10 upgrade related shenanigans in Windows 7 and 8.

This is a free tool that can remove and disable the 'Get Windows 10' notification area icon on Windows 7 and Windows 8. Recent versions can also disable 'Upgrade to Windows 10' behavior in the Windows Update control panel and do much more. See the user guide at the Ultimate Outsider blog.

screenshot of GWX Control Panel

2

The latest and greatest (and easiest) way to get rid of the icon and prevent the update is Never10:

https://www.grc.com/never10.htm

Never10

Just one click to disable. This uses official registry entries to prevent OS upgrades. More technical details here:

https://www.grc.com/never10/details.htm

1

Microsoft has confirmed to WinBeta.org it will soon Remove the use of the Windows 10 upgrade nag.

It will become effective after July 29th 2016

Details are still being finalized, but on July 29th the Get Windows 10 app that facilitates the easy upgrade to Windows 10 will be disabled and eventually removed from PCs worldwide.

For Windows 7 and Windows 8.1 users who have resisted the move to Windows 10 it means the upgrade prompts will disappear. Third-party apps have allowed many to disable the notifications, and system administrators can kill the process for business machines.

http://www.winbeta.org/news/get-windows-10-app-will-removed-windows-78-1-july-29th-free-offer-ends

Moab
  • 58,769
-1

This may seem obvious, but have you tried hiding the icon in the task tray icon customization panel?

1

2

For those of you that have all of your icons showing, and do not use the "more icons" panel, you can also access the Notification Area Icons settings through the control panel, as this should work regardless of whether or not you use the more icons panel.

To access the settings through the Control Panel, open it and change your "View by" setting to either "Large icons" or "Small icons", and you should then see it listed as one of the options in the panel.

3

A.L
  • 820
  • 2
  • 12
  • 29
-2

None of the solutions posted here worked reliably for me, as the nagging Windows 10 icon came back after every update. My solution was simple:

  1. Kill the GWX.exe process
  2. Go to Windows\System32\GWX
  3. Rename the GWX folder to something else, like GWX123

Voila, the update nag is gone and Windows Update thinks GWX is still installed, so it doesn't try to reinstall it.