rn10950 Posted June 9, 2015 Author Posted June 9, 2015 What do you mean by more generic though?Something that presents a menu of installed updates and allows you to select the one you want to uninstall.In case you mean the updates in the menu ought to be limited to those listed in the thread about avoiding Win 10, I do fully agree. I like this idea, but it may take a while for me to implement it. But a somewhat-related question, does anyone know a way to hide updates via C++ or the command line?
NoelC Posted June 9, 2015 Posted June 9, 2015 In case you mean the updates in the menu ought to be limited to those listed in the thread about avoiding Win 10, I do fully agree. Looking over the various updates, those in the aforementioned thread are all those of course known to have some tie-in with Windows 10. I don't know if that means they should ALL be eliminated. Several of them - e.g., those purporting to update Windows Update itself - I read as the process having been improved by the things learned by Microsoft in the preparation of the Windows 10 update. At least one has been described by a Microsoft guy as something everyone will need (I know, I know, it's them talking, but still) because Windows Updates will rely on it moving forward... One extreme might be to just remove the GWX update itself and leave all the others intact. I myself have hidden only some of them. -Noel
dencorso Posted June 9, 2015 Posted June 9, 2015 It should allow for choice, of course. And in any case, those telemetry updates are obviously unwanted, too.
bphlpt Posted June 9, 2015 Posted June 9, 2015 ... But a somewhat-related question, does anyone know a way to hide updates via C++ or the command line?This works - http://www.msfn.org/board/topic/163162-hide-bing-desktop-and-other-windows-updates/. Cheers and Regards
Glenn9999 Posted June 9, 2015 Posted June 9, 2015 What do you mean by more generic though?Something that presents a menu of installed updates and allows you to select the one you want to uninstall.In case you mean the updates in the menu ought to be limited to those listed in the thread about avoiding Win 10, I do fully agree. I meant something that lists all the updates installed on the system and then gives an option to uninstall the update in question. Of course, it can be expanded to all available updates and allow updates to be hidden, too.
Glenn9999 Posted June 9, 2015 Posted June 9, 2015 (edited) I like this idea, but it may take a while for me to implement it. But a somewhat-related question, does anyone know a way to hide updates via C++ or the command line? I'd have to look into it - it's been quite a while since I worked with WUAPI, but I distinctly remember it possible to do through code. I found out you could do just about everything on the system through the API, I'm sure hiding updates is a small task once you initialize the API. Edit: I did. Very easy. Edit2: Though harder you can do the uninstall through the API too. I may have to attempt this program and release it (generic as I was thinking - list updates available to system, uninstall what user chooses, allow hiding of updates, etc). Edited June 9, 2015 by Glenn9999
Glenn9999 Posted June 9, 2015 Posted June 9, 2015 (edited) I may have to attempt this program and release it (generic as I was thinking - list updates available to system, uninstall what user chooses, allow hiding of updates, etc). And I did, at least a clone of this one. Being generic would be very easy and probably more preferable since you're messing with bringing back full update lists anyway. I get a corruption of the image every once in a while when I test it. Basically put, you have to find the update in Windows Update, the problem is, it's rather slow sometimes. Good part is, you get an existence test and a chance to hide the update. The problem with it being slow is that it seems you have to use WU in order to hide the update. Of course, the Uninstall method in the API only works for WSUS, so couldn't do that. Anyhow, since it was a just for fun thing, and don't want to horn in on this, have some source:procedure TForm1.Button1Click(Sender: TObject);const theupdate = '3035583'; theupdateid = '1aa3ae66-f3e2-4f9d-a37f-7caa951ee2b0'; //GUID for 3035583var UpdateSession: IUpdateSession; UpdateSearcher: IUpdateSearcher; SearchResult: ISearchResult; Update: IUpdate; updstring: string; procid: DWord; token: LongBool;begin Button1.Enabled := false; UpdateSession := CoUpdateSession.Create; UpdateSearcher := UpdateSession.CreateUpdateSearcher(); UpdateSearcher.ServerSelection := 0; UpdateSearcher.ClientApplicationID := 'test wuapimap'; UpdateSearcher.Online := true; updstring := '(IsInstalled=1) and updateid=''' + theupdateid + ''''; Memo1.Lines.Add('Searching for Update ' + theupdate); SearchResult := UpdateSearcher.Search(WideString(updstring)); if SearchResult.ResultCode <> 2 then // not success begin Memo1.Lines.Add('Search error.'); Button1.Enabled := true; exit; end; if SearchResult.Updates.Count = 0 then // no updates returned begin Memo1.Lines.ADD('Update ' + theupdate + ' not found.'); Button1.Enabled := true; exit; end; Update := SearchResult.Updates.Item[0]; Update.IsHidden := true; Memo1.Lines.Add('Update ' + theupdate + ' hidden.'); Memo1.Lines.Add('Running uninstall - wusa.exe /uninstall /norestart /quiet /kb:' + theupdate); DisableWow64Redirection(token); Execute_program('wusa.exe', '/uninstall /norestart /quiet /kb:' + theupdate, procid, true); RevertWow64Redirection(token); UpdateSearcher._Release; UpdateSession._Release; if MessageDlg('The Machine Needs to be restarted. Do it now?', mtWarning, [mbYes, mbNo], 0) = mrYes then machine_restart; Button1.Enabled := true;end; Edited June 9, 2015 by Glenn9999
NoelC Posted June 10, 2015 Posted June 10, 2015 (edited) I meant something that lists all the updates installed on the system and then gives an option to uninstall the update in question. Of course, it can be expanded to all available updates and allow updates to be hidden, too. Out of curiosity, what do you imagine will be the difference between that and the application the OS provides to do exactly that? What OS are you talking about running on? -Noel Edited June 10, 2015 by NoelC
Glenn9999 Posted June 10, 2015 Posted June 10, 2015 Out of curiosity, what do you imagine will be the difference between that and the application the OS provides to do exactly that? What OS are you talking about running on? -Noel Next to little. Just mentioning it as opposed to a one shot thing like the program posted in this thread. Next to little between this app and going into Control Panel, uninstalling the update, and then hiding it in Windows Update.
dencorso Posted June 10, 2015 Posted June 10, 2015 Just my 2¢, so feel free to ignore it, but I'd stick to the original purpose of the application and make it exclusively a way to opt-out of 10, after being conned by MS into accepting it. Such an application is clearly needed, especially by the less tech-savvy users.
JorgeA Posted June 10, 2015 Posted June 10, 2015 ^^ I agree completely: less tech-savvy users are the ones who will benefit the most from this neat little utility. The key, though, will be to somehow get these users to hear about the utility's existence. --JorgeA
rn10950 Posted June 11, 2015 Author Posted June 11, 2015 I agree with dencorso and JorgeA, I wrote this utility specifically for the Windows 10 updates. Coming in the next few days, however is a big update with new features and some major code changes. I will add an "Advanced Mode" (see the GitHub page for more on that) and possibly command-line switches (requested by Kelsenellenelvian) Coming in the update after that will be a "kill two birds with one stone" update that will wipe out all the possible Win10 updates noted in the thread posted previously, as well as the ability to hide the updates once removed. (I have to figure out how to use the WUA API, I keep getting VS2005 build time errors in Wuapi.h) Once that update is released, I think it will be ready for the non-techical users. Speaking of the regular users, when I released the utility last week, I posted on Reddit's /r/Windows. They seemed to hate it and asked me "why didn't you just write a batch file", simple, there are users that see a CMD window and think it's hacking. (and no unfortunatley, I'm not making this up) What are your opinions on that?
JorgeA Posted June 11, 2015 Posted June 11, 2015 I'd say that your approach is the best one. Ignore the naysayers. The command line is intimidating for non-geeks and for those who didn't cut their teeth on MS-DOS back in the day. --JorgeA
NoelC Posted June 11, 2015 Posted June 11, 2015 I keep getting VS2005 build time errors in Wuapi.h By the way, Visual Studio 2015 Community Edition RC is available, and it's free. -Noel
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now