Sledgehammer - Windows 10 Update Control

Discussion in 'MDL Projects and Applications' started by pf100, Nov 28, 2016.

  1. pf100

    pf100 Duct Tape Coder

    Oct 22, 2010
    2,069
    3,447
    90
    Yes. It works on all versions of Windows 10.
     
  2. Whistler4

    Whistler4 MDL Member

    Jul 30, 2015
    204
    192
    10
    #1422 Whistler4, Feb 19, 2020
    Last edited: Feb 19, 2020
    Did I miss something: What and where is setupcomplete.cmd? Does it create an Inno Setup iss file?

    BTW, Inno Setup 6.0.3, released last October, sets off Norton alarms for Heur.AdvML.B, as does the compiled setup executable file created with it. There's a comment about it in the Inno Setup forum, but no replies. Symantec forums going back 10 years have complaints about custom code triggering false positives for Heur.AdvML.B. VirusTotal is relatively happy about it, though.
     
  3. pf100

    pf100 Duct Tape Coder

    Oct 22, 2010
    2,069
    3,447
    90
    I think he's creating his own setupcomplete.cmd to silently install sledgehammer from the exe during a windows install, and I doubt you can create an iss file from the exe. I gave the inno setup iss file to a few people already and will post it publicly if anyone wants it but I doubt @Camino has it.
    The version of Inno Setup I used with v2.6.0 is 5.5.9 and after hearing your report of problems with 6.0.3 I'll probably use that same version again for v2.6.1.
    Also, my apologies to all for not having an update by now with advanced options and updated WuMgr, but I just got over being sick for 2 solid months with pneumonia or whatever it was since I never went to a doctor about it (yes, I should have), and my brain feels like it's full of cotton and I'm just now able to stay out of bed all day. It's funny how an illness can affect your concentration level. As soon as I'm well enough the first thing I'll do is push out an update. Thanks to everyone for your patience.
     
  4. Whistler4

    Whistler4 MDL Member

    Jul 30, 2015
    204
    192
    10
    No apologies needed. You've done such a good job that your last released product is still 100% effective, as far as I know. So you can rest on your laurels for a while. Sorry you got sick! And glad you're getting better!

    I'd appreciate getting your iss somehow. I've been playing around with Inno Setup, and I think I've learned a good bit, but I'd like to see how you put the secondary choices into the Start Menu for Sledgehammer. (I can probably work it out -- I think it's in the icons options -- but it'd be easier with a more advanced point of departure.)

    Thanks again for your hard work and accomplishments.
     
  5. pf100

    pf100 Duct Tape Coder

    Oct 22, 2010
    2,069
    3,447
    90
    Here's the iss file:
    Code:
    #define MyAppName "Sledgehammer"
    #define MyAppOutputName "Sledgehammer"
    #define MyAppVersion "2.6.0"
    #define MyAppPublisher "pf100/rpo inc."
    #define MyAppURL "https://forums.mydigitallife.net/threads/sledgehammer-windows-10-update-control.72203/"
    #define MyAppExeName "Sledgehammer.cmd"
    #define MyAppShortcutName "Sledgehammer"
    #define UninstallerCmd "Uninstaller_undo-all-script-changes.cmd"
    #define UninstallerName "Uninstaller-undo script changes"
    #define ReadmeCMD "_readme.txt"
    #define ReadmeName "Readme"
    #define VersionName "Version 2.6.0"
    #define VersionCMD "Version 2.6.0.txt"
    #define ProjectPageName "Project Page"
    
    [Setup]
    AppId={{DDDED030-CBA4-4229-9739-2850351F141D}
    AppName={#MyAppName}
    AppVersion={#MyAppVersion}
    ;AppVerName={#MyAppName} {#MyAppVersion}
    AppPublisher={#MyAppPublisher}
    AppPublisherURL={#MyAppURL}
    AppSupportURL={#MyAppURL}
    AppUpdatesURL={#MyAppURL}
    DefaultDirName={pf}\Sledgehammer
    DefaultGroupName=Sledgehammer
    OutputBaseFilename={#MyAppOutputName}_{#MyAppVersion}
    PrivilegesRequired=admin
    ArchitecturesAllowed=x86 x64
    ArchitecturesInstallIn64BitMode=x64
    Compression=lzma
    SolidCompression=yes
    DisableWelcomePage=no
    CreateUninstallRegKey=no
    UsePreviousAppDir=yes
    UsePreviousSetupType=yes
    AllowNoIcons=yes
    InfoBeforeFile=C:\Windows Update\infobefore.txt
    InfoAfterFile=C:\Windows Update\infoafter.txt
    WizardImageFile=C:\Windows Update\logo.bmp
    OutputDir=D:\Downloads\Sledgehammer-Windows 10 Update Control Script\Installer\Output
    UninstallFilesDir={app}\uninstall
    
    [Messages]
    SetupAppTitle = Setup W10UWS {#MyAppVersion}
    SetupWindowTitle = {#MyAppName} {#MyAppVersion} Installer
    
    [Languages]
    Name: "english"; MessagesFile: "compiler:Default.isl"
    Name: "armenian"; MessagesFile: "compiler:Languages\Armenian.islu"
    Name: "brazilianportuguese"; MessagesFile: "compiler:Languages\BrazilianPortuguese.isl"
    Name: "catalan"; MessagesFile: "compiler:Languages\Catalan.isl"
    Name: "corsican"; MessagesFile: "compiler:Languages\Corsican.isl"
    Name: "czech"; MessagesFile: "compiler:Languages\Czech.isl"
    Name: "danish"; MessagesFile: "compiler:Languages\Danish.isl"
    Name: "dutch"; MessagesFile: "compiler:Languages\Dutch.isl"
    Name: "finnish"; MessagesFile: "compiler:Languages\Finnish.isl"
    Name: "french"; MessagesFile: "compiler:Languages\French.isl"
    Name: "german"; MessagesFile: "compiler:Languages\German.isl"
    Name: "greek"; MessagesFile: "compiler:Languages\Greek.isl"
    Name: "hebrew"; MessagesFile: "compiler:Languages\Hebrew.isl"
    Name: "hungarian"; MessagesFile: "compiler:Languages\Hungarian.isl"
    Name: "italian"; MessagesFile: "compiler:Languages\Italian.isl"
    Name: "japanese"; MessagesFile: "compiler:Languages\Japanese.isl"
    Name: "nepali"; MessagesFile: "compiler:Languages\Nepali.islu"
    Name: "norwegian"; MessagesFile: "compiler:Languages\Norwegian.isl"
    Name: "polish"; MessagesFile: "compiler:Languages\Polish.isl"
    Name: "portuguese"; MessagesFile: "compiler:Languages\Portuguese.isl"
    Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
    Name: "scottishgaelic"; MessagesFile: "compiler:Languages\ScottishGaelic.isl"
    Name: "serbiancyrillic"; MessagesFile: "compiler:Languages\SerbianCyrillic.isl"
    Name: "serbianlatin"; MessagesFile: "compiler:Languages\SerbianLatin.isl"
    Name: "slovenian"; MessagesFile: "compiler:Languages\Slovenian.isl"
    Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl"
    Name: "turkish"; MessagesFile: "compiler:Languages\Turkish.isl"
    Name: "ukrainian"; MessagesFile: "compiler:Languages\Ukrainian.isl"
    
    [Tasks]
    Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"
    
    [Files]
    Source: "C:\Windows Update\Sledgehammer.cmd"; DestDir: "{app}"; Flags: ignoreversion
    Source: "C:\Windows Update\_readme.txt"; DestDir: "{app}"; Flags: ignoreversion
    Source: "C:\Windows Update\uninstall\Uninstaller_undo-all-script-changes.cmd"; DestDir: "{app}\uninstall"; Flags: ignoreversion
    Source: "C:\Windows Update\version 2.6.0.txt"; DestDir: "{app}"; Flags: ignoreversion
    Source: "C:\Windows Update\bin\wub.exe"; DestDir: "{app}\bin"; Flags: ignoreversion
    Source: "C:\Windows Update\bin\wumt_x64.exe"; DestDir: "{app}\bin"; Flags: ignoreversion
    Source: "C:\Windows Update\bin\wumt_x86.exe"; DestDir: "{app}\bin"; Flags: ignoreversion
    Source: "C:\Windows Update\bin\NSudoC.exe"; DestDir: "{app}\bin"; Flags: ignoreversion
    Source: "C:\Windows Update\bin\NSudoCx64.exe"; DestDir: "{app}\bin"; Flags: ignoreversion
    Source: "C:\Windows Update\bin\wumgr.exe"; DestDir: "{app}\bin"; Flags: ignoreversion
    Source: "C:\Windows Update\bin\translation.ini"; DestDir: "{app}\bin"; Flags: ignoreversion
    Source: "C:\Windows Update\bin\wumgr.ini"; DestDir: "{app}\bin"; Flags: ignoreversion
    Source: "C:\Windows Update\bin\wumt_lang.ini"; DestDir: "{app}\bin"; Flags: ignoreversion
    Source: "C:\Windows Update\recovery\recovery.cmd"; DestDir: "{app}\recovery"; Flags: ignoreversion
    Source: "C:\Windows Update\recovery\recovery-readme.txt"; DestDir: "{app}\recovery"; Flags: ignoreversion
    Source: "C:\Windows Update\bin\WUMT Translations\readme.txt"; DestDir: "{app}\bin\WUMT Translations"; Flags: ignoreversion
    Source: "C:\Windows Update\bin\WUMT Translations\WUMT Translations.zip"; DestDir: "{app}\bin\WUMT Translations"; Flags: ignoreversion
    
    [Icons]
    Name: "{group}\{#MyAppShortcutName}"; Filename: "{app}\{#MyAppExeName}"
    Name: "{commondesktop}\{#MyAppShortcutName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
    Name: "{group}\{#UninstallerName}"; Filename: "{app}\uninstall\{#UninstallerCmd}"
    Name: "{group}\{#ReadmeName}"; Filename: "{app}\{#ReadmeCMD}"
    Name: "{group}\{#VersionName}"; Filename: "{app}\{#VersionCMD}"
    Name: "{group}\{#ProjectPageName}"; Filename: "https://forums.mydigitallife.net/threads/sledgehammer-windows-10-update-control.72203/"
    
    [UninstallDelete]
    Type: files; Name: "{app}\bin\wdu.cmd"
     
  6. Whistler4

    Whistler4 MDL Member

    Jul 30, 2015
    204
    192
    10
    Thank you, much obliged!
     
  7. Whistler4

    Whistler4 MDL Member

    Jul 30, 2015
    204
    192
    10
    FYI on the Inno Setup versions: The last version 5 is 5.6.1, and both the downloaded Inno Setup installation file (innosetup-5.6.1.exe) and the Sledgehammer output file ring no antivirus alarms on my system. However, even the very first published version 6 (innosetup-6.0.2.exe) produces a Sledgehammer output file that makes Norton/Symantec squawk with Heur.AdvML.B. Again, it's a false positive alarm, but I know you want to avoid that. Inno changed something between versions 5 and 6 to cause that problem.
     
  8. Hulkster

    Hulkster MDL Novice

    Aug 30, 2019
    2
    0
    0
    I wanted to ask what the status is on the latest version of Sledgehammer? I read the creator was ill and couldn't continue with the project because of this. I due really hope you feel better now since an ammonia is a very serious thing! All the best!

    The reason i wanted to ask is because I just installed Windows 10 19H2-1909 on an older pc of mine and made an Acronis backup of it (just in case)! But I am not sure which version I should go for to update it? If I should wait or just continue with an older version! in the past the wumgr way always worked enough for me to have some sort of control!
     
  9. Hulkster

    Hulkster MDL Novice

    Aug 30, 2019
    2
    0
    0
    @pf100 So happy to hear you are healing slowly but steady! I will wait then for a new version! The version 1909 I have I didn't get by downloading it through Microsoft! I downloaded it another way, from someone who updates Windows 10 to the latest version and makes an ISO out of if (for new installations)!

    I don't think I can give the link here, since it would be illegal (torrent)! If you would like the link anyway, I could always give it in private! The reason I download it this way is the person adds a lot of extra's to it such as .Net and some tweaks/settings! I have a very good experience with those updated Windows 10 editions, that are made from original Microsoft releases!
     
  10. Homer712

    Homer712 MDL Member

    Oct 22, 2018
    118
    45
    10
    Just reinstalled Sledgehammer (after a long break). Sadly, I was under the impression that MS was getting better at updates, the latest February update put an end to that notion! So, after reinstalling, I have a couple of hopefully helpful tips for others.

    If you are using the latest version of Malwarebytes (V4) it will stop (fails) the “Internet Check” that Sledgehammer runs unless you open Malwarebytes/Settings/Allow List and add “Sledgehammer.cmd” to the “Allow application to connect to the internet” list.

    Second, I use a little utility called “Windows Updates History Viewer” to keep track of installed updates (easier than using MS “View update history”). After reinstalling Sledgehammer the window came up blank. To fix that, under “Options/Advanced Options/Load From:” you have to change it from “This computer using API” to “This computer read database file directly.”

    Other than those two minor glitches, Sledgehammer is functioning perfectly.

    I do have one question though. Once you have run Sledgehammer, do you need to run it every time to check for updates, or can you just run wumgr.exe from inside the Sledgehammer/Bin directory?
     
  11. Whistler4

    Whistler4 MDL Member

    Jul 30, 2015
    204
    192
    10
    As the Sledgehammer screen says, "After checking for updates, the script stops and disables the Windows update service when WuMgr or WUMT is closed whether or not the service was previously enabled." Sledgehammer is designed to run WuMgr from within the script. If you try to run WuMgr on its own, it will complain that "The Windows Update Service is not available. Try to start it?"

    You can check out FAQ C6 in the readme file if you want to monitor when the Windows update Service is enabled or disabled.
     
  12. pf100

    pf100 Duct Tape Coder

    Oct 22, 2010
    2,069
    3,447
    90
  13. Wazoo

    Wazoo MDL Addicted

    Nov 5, 2013
    513
    273
    30
    Stop hovering to collapse... Click to collapse... Hover to expand... Click to expand...
  14. pf100

    pf100 Duct Tape Coder

    Oct 22, 2010
    2,069
    3,447
    90
    Ha, thanks, I had forgot about that. I'll see what I can find out about it. If anyone has any info about the status of wumt post it here.
     
  15. pf100

    pf100 Duct Tape Coder

    Oct 22, 2010
    2,069
    3,447
    90
    I'm glad to announce that I'm (finally) working on the next update. v2.6.1 will be released a few days from now, maybe a week or so.
    Thanks for not being outside my house with pitchforks :)
     
  16. Smiglo5

    Smiglo5 MDL Novice

    Jul 8, 2018
    37
    3
    0
    Will I be able to use 2.6.1 when I've already disabled WU with 2.6.0?
     
  17. zylor

    zylor MDL Junior Member

    Feb 25, 2012
    92
    49
    0
    Yes