Hi,
I am trying to find a batch file that will run ms:settingswindowsupdate to check for updates and optional updates and install them, but all hidden or in the background. I know I can do this manually with check for updates, but I want to automate this process a little.
I have tried usoclient but it does not seem to work outside of task manager but if I create my own task it will not work. There is probably a very easy way to do this but I am pretty useless unfortunately, I want to avoid third party software.
I am working from home currently and have to keep logging in to work to make sure all updates are installed and everything is up to date. This I would think should be pretty easy but I can't believe how awkward it is proving.
I really appreciate any help you can give and I'm sorry if I have posed this in the wrong place.
Thanks
Toby
ms:settingswindowsupdate hidden
Moderator: DosItHelp
Re: ms:settingswindowsupdate hidden
I actually can't check that, but in case with "I (...) can do this manually" you mean, that you use the "start->Run"- Dialog, type "ms:settingswindowsupdate" and hit enter, then the following might work:
penpen
Code: Select all
start "" "ms:settingswindowsupdate"
:: though i would expect something more like the following; but that might have changed since i read that the last time years ago
start "" "ms-settings:windowsupdate"
:: or
start "" "ms-settings:windowsupdate-action"
penpen
-
- Posts: 4
- Joined: 23 Mar 2021 07:24
Re: ms:settingswindowsupdate hidden
Hi Penpen,
Yes start "" "ms-settings:windowsupdate-action" definitely works I have to run it twice as the first time it only starts the settings update page the second time it starts a update check. Any idea how I can get the update page to open hidden/silently?
Thank you
Toby
Yes start "" "ms-settings:windowsupdate-action" definitely works I have to run it twice as the first time it only starts the settings update page the second time it starts a update check. Any idea how I can get the update page to open hidden/silently?
Thank you
Toby
Re: ms:settingswindowsupdate hidden
I'm not sure if the update page can be influences, but maybe the following idea might help:
viewtopic.php?t=9468#p61384
viewtopic.php?t=9468#p61384
-
- Posts: 4
- Joined: 23 Mar 2021 07:24
Re: ms:settingswindowsupdate hidden
Hi Penpen,
Ok I have tried the scrips in the link you suggested, I can't get any of them to work, I guess I am doing something wrong, I have added the ms:settings to the scrips some will run the settings page some will not, I am probably doing something wrong!!
The original scripts still won't allow me to run this hidden/silent.
Thank you so much for your help, it really is appreciated.
Toby
Ok I have tried the scrips in the link you suggested, I can't get any of them to work, I guess I am doing something wrong, I have added the ms:settings to the scrips some will run the settings page some will not, I am probably doing something wrong!!
The original scripts still won't allow me to run this hidden/silent.
Thank you so much for your help, it really is appreciated.
Toby
Re: ms:settingswindowsupdate hidden
I thought of something like the following:
Sidenote:
I always test with the option "2" (=Activates the window and displays it as a minimized window.), which, if the commandline works as expected, could be switched to "0" (=Hides the window and activtes another window.)
But as you wrote, it simply doesn't work, so the obviously the windows update page window simply ignores such options.
Example for one application that obeys those option and one that ignores them ("test.bat"):
I don't see any other (regular) batch options to hide that window:
You might write for example a C++ application, that explicitely hides the windows update window (using "ShowWindow(hWnd, SW_HIDE);") after creation;
the result could be packed into a batch file with some additional steps, but it's easier to skip those steps and simply use a compiled exe as an alternative step... .
penpen
Code: Select all
"C:\WINDOWS\system32\WindowsPowerShell\v1.0\powershell.exe" "-Command" "$wshShell = New-Object -ComObject WScript.Shell; $result = $WshShell.Run(\"ms-settings:windowsupdate\", 2);"
I always test with the option "2" (=Activates the window and displays it as a minimized window.), which, if the commandline works as expected, could be switched to "0" (=Hides the window and activtes another window.)
But as you wrote, it simply doesn't work, so the obviously the windows update page window simply ignores such options.
Example for one application that obeys those option and one that ignores them ("test.bat"):
Code: Select all
@if (true==false) @end /*
@echo off
setlocal enableExtensions disableDelayedExpansion
call :main
goto :eof
:main
wscript //E:JScript //NoLogo "%~f0"
goto :eof
goto :eof
*/
var WshShell = WScript.CreateObject("WScript.Shell");
WshShell.Run ("\"C:\\Windows\\System32\\Notepad.exe\"", 2, false); // obeys the second argument
WshShell.Run ("\"C:\\Windows\\Explorer.exe\"", 2, false); // ignores the second argument
You might write for example a C++ application, that explicitely hides the windows update window (using "ShowWindow(hWnd, SW_HIDE);") after creation;
the result could be packed into a batch file with some additional steps, but it's easier to skip those steps and simply use a compiled exe as an alternative step... .
penpen
-
- Posts: 4
- Joined: 23 Mar 2021 07:24
Re: ms:settingswindowsupdate hidden
Hi Penpen,
I have tried to run this but I have had no luck I don't know how to add the code I need, I have bee trying Powershell but again to get it to run hidden is equally as difficult as tring to get a batch file to run hidden.
I'm guessing this is an imposible task.
Thanks
Toby
I have tried to run this but I have had no luck I don't know how to add the code I need, I have bee trying Powershell but again to get it to run hidden is equally as difficult as tring to get a batch file to run hidden.
I'm guessing this is an imposible task.
Thanks
Toby
Re: ms:settingswindowsupdate hidden
Yes, as i wrote the "windows update page window simply ignores such options", like running minimized or hidden.
So there is not much you can do about that from pure batch.
Therefore you have to use a programming language such as C++, with which you first start the windows update window,
then hook into that process and last hide that window.
Sidenote:
Every C++ program could be translated into a C# programm, which technically could be loaded and compiled by a hybrid C#/batch file - but beside proof of concept, that's not worth the effort, unless you have a good reason to do that.
penpen
So there is not much you can do about that from pure batch.
Therefore you have to use a programming language such as C++, with which you first start the windows update window,
then hook into that process and last hide that window.
Sidenote:
Every C++ program could be translated into a C# programm, which technically could be loaded and compiled by a hybrid C#/batch file - but beside proof of concept, that's not worth the effort, unless you have a good reason to do that.
penpen