• AutoHotkey – Create your own Win 10 'winver' (updated)

    Home » Forums » Developers, developers, developers » DevOps Lounge » AutoHotkey – Create your own Win 10 'winver' (updated)

    Author
    Topic
    #340351

    I can no longer add posts to the original thread in the Windows Secrets Lounge forum (apparently because the thread is over 99 days old [?]) so I’m going to continue here…

    Very briefly, IMO Win 10’s built-in winver is not especially helpful. For something that’s supposed to inform you of the Windows version, 50% of the GUI is just blank space, 40% waffles on about Microsoft and a scant 10% actually provides useful information, e.g. edition, version, build and revision.

    So… I wrote an alternative (using AutoHotkey) that shows the same edition, version, build and revision information but in a very compact GUI:

    my-winver

    Then I thought… it can be made more useful. So currently it looks like this:

    my-winver-with-support

    It now copies the information to the Windows clipboard in case you get asked – ooh, say, by someone on AskWoody… and you can just paste the info from the clipboard into a reply.

    Perhaps more useful, click on one of the links and your default browser will open at the relevant MS info page.

    Let me know if you’re interested and I’ll post the code (or a link to it).

     

    3 users thanked author for this post.
    Viewing 19 reply threads
    Author
    Replies
    • #340555

      I’m interested in it.

      • #340911

        @Berton123 (and any others who are interested) – I’ve updated my AHK script today to take into account the cumulative update to Build 17763.379.

        The script is now ~460 lines now so probably too long to paste into this post. 🙂

        Here’s the AHK script in the Public folder of my Google drive. You should be able to download the script using the icon on top-right of the screen.

        ahk-script-on-google-drive-2

        Let me know of any problems.

        Hope this helps…

        1 user thanked author for this post.
    • #341008

      [Edited:]

      From now on you can get the latest version of All my PowerShell programs Here.

      If you want to save the link:

      https://onedrive.live.com/embed?cid=50B4DFA90B96FF40&resid=50B4DFA90B96FF40%217603&authkey=AKzlqvMyQdAzoZ8

      [End Edit]

      Rick,

      Here’s a PowerShell version: Get-WinVerV3

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

      • This reply was modified 2 years, 3 months ago by RetiredGeek. Reason: Edited to add link to my shared OneDrive folder
      2 users thanked author for this post.
    • #345209

      Here’s a PowerShell version: Get-WinVerV3

      My apologies, RG. I had no idea that you had replied.

      Wow… 🙂 It’s obvious that you take far greater care than I do in creating well-formed scripts complete with copious error-checking… something I’m usually very remiss about. (Slapdash is my middle name… 🙂 )

      I’m deeply envious of the apparent simplicity of your Get-VersionURL and Get-BuildURL functions. I’m sure something similar is possible in AHK but I’m just not proficient enough to know how.

      The ShowDialog function looks horribly complex (112 lines) by comparison to AHK (18 lines). It takes 11 lines to describe a single textbox (vs 1 in AHK)? That’s just nuts. 🙂

      I’ve been trying to get my head round PowerShell more in the last week and have begun to appreciate much more how powerful it can be, especially for things like interrogation of event logs… something which AHK is, IMO, poor at. It was through my ‘playing’ that I discovered how easy it is to – for example – parse and count different “Microsoft-Windows-Time-Service” events. I have no idea at all how to do in AHK what I did in PowerShell within a few minutes of experimentation.

      IMO AHK’s strength is on the visual side… so I’ll continue to use a hybrid approach, i.e. using PowerShell wrapped in AHK to do more of the heavy lifting as I become more familiar with it. However, I’m basically lazy and just interested in quick-and-dirty solutions (not like your elegant and very professional style) so I’ll continue to use AHK for the user interfaces. 🙂

      1 user thanked author for this post.
    • #2085570

      Rick & All,

      Here’s the code updated to the Jan 14, 2020 updates.

      Get-WinVer3-2
      Zip File: Get-WinVerV3-2
      MD5 Hash: 4F4D89543DFC24906495FFF3B214724F

      HTH 😎

       

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

    • #2118100

      Hey Y’all,

      Here’s version 4.0 that adds tabs for Version and Monthly updates.

      Main Tab:
      WinVerTab1
      Version Update Tab:
      WinVerTab2
      Monthly Update Tab:
      WinVerTab3
      Zip File: Get-WinVer
      MD5 Hash: 44DA13C7CEBF953C328F56D54D24C1CD

      HTH 😎

       

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

      1 user thanked author for this post.
    • #2123716

      RG I tried this and got this in the shell as well as the info box.

      Get-Date : Cannot bind parameter 'Date'. Cannot convert value "2020" to type 
      "System.DateTime". Error: "String was not recognized as a valid DateTime."
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:28
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : InvalidArgument: (:) [Get-Date], ParameterBindingExcept 
         ion
          + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Com 
         mands.GetDateCommand
       
      You cannot call a method on a null-valued expression.
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:34
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                                  ~~~~~
          + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
          + FullyQualifiedErrorId : InvokeMethodOnNull
       
      Get-Date : Cannot bind parameter 'Date'. Cannot convert value "2019" to type 
      "System.DateTime". Error: "String was not recognized as a valid DateTime."
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:28
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : InvalidArgument: (:) [Get-Date], ParameterBindingExcept 
         ion
          + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Com 
         mands.GetDateCommand
       
      You cannot call a method on a null-valued expression.
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:34
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                                  ~~~~~
          + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
          + FullyQualifiedErrorId : InvokeMethodOnNull
       
      Get-Date : Cannot bind parameter 'Date'. Cannot convert value "2019" to type 
      "System.DateTime". Error: "String was not recognized as a valid DateTime."
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:28
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : InvalidArgument: (:) [Get-Date], ParameterBindingExcept 
         ion
          + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Com 
         mands.GetDateCommand
       
      You cannot call a method on a null-valued expression.
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:34
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                                  ~~~~~
          + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
          + FullyQualifiedErrorId : InvokeMethodOnNull
       
      Get-Date : Cannot bind parameter 'Date'. Cannot convert value "2019" to type 
      "System.DateTime". Error: "String was not recognized as a valid DateTime."
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:28
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : InvalidArgument: (:) [Get-Date], ParameterBindingExcept 
         ion
          + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Com 
         mands.GetDateCommand
       
      You cannot call a method on a null-valued expression.
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:34
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                                  ~~~~~
          + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
          + FullyQualifiedErrorId : InvokeMethodOnNull
       
      Get-Date : Cannot bind parameter 'Date'. Cannot convert value "2019" to type 
      "System.DateTime". Error: "String was not recognized as a valid DateTime."
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:28
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : InvalidArgument: (:) [Get-Date], ParameterBindingExcept 
         ion
          + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Com 
         mands.GetDateCommand
       
      You cannot call a method on a null-valued expression.
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:34
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                                  ~~~~~
          + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
          + FullyQualifiedErrorId : InvokeMethodOnNull
       
      Get-Date : Cannot bind parameter 'Date'. Cannot convert value "2019" to type 
      "System.DateTime". Error: "String was not recognized as a valid DateTime."
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:28
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : InvalidArgument: (:) [Get-Date], ParameterBindingExcept 
         ion
          + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Com 
         mands.GetDateCommand
       
      You cannot call a method on a null-valued expression.
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:34
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                                  ~~~~~
          + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
          + FullyQualifiedErrorId : InvokeMethodOnNull
       
      Get-Date : Cannot bind parameter 'Date'. Cannot convert value "2020" to type 
      "System.DateTime". Error: "String was not recognized as a valid DateTime."
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:28
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : InvalidArgument: (:) [Get-Date], ParameterBindingExcept 
         ion
          + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Com 
         mands.GetDateCommand
       
      You cannot call a method on a null-valued expression.
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:34
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                                  ~~~~~
          + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
          + FullyQualifiedErrorId : InvokeMethodOnNull
       
      Get-Date : Cannot bind parameter 'Date'. Cannot convert value "2020" to type 
      "System.DateTime". Error: "String was not recognized as a valid DateTime."
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:28
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : InvalidArgument: (:) [Get-Date], ParameterBindingExcept 
         ion
          + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Com 
         mands.GetDateCommand
       
      You cannot call a method on a null-valued expression.
      At C:\Users\ralph\Documents\WindowsPowerShell\Scripts\Get-WinVer.ps1:653 char:34
      +                  $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      +                                  ~~~~~
          + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
          + FullyQualifiedErrorId : InvokeMethodOnNull
       
      

      🍻

      Just because you don't know where you are going doesn't mean any road will get you there.
      • #2189813

        Wavy,

        Sorry on being so late getting back, somehow I missed your reply!

        Don’t know why you got that. I just tried the program again and it worked both in regular PS and run as Administrator. In any case here’s an updated version that has the tables adjusted for the latest Windows updates through 3/11/2020.

        Get-WinVer.ps1 : Get-WinVer
        Sample Screen:
        WV-Info
        HTH 😎

         

        May the Forces of good computing be with you!

        RG

        PowerShell & VBA Rule!
        Computer Specs

        • This reply was modified 3 years, 2 months ago by RetiredGeek.
        • This reply was modified 3 years, 2 months ago by RetiredGeek.
        • #2189819

          FYI: I just tested this program in PowerShell 7 and much to my surprise it works! 😎

          May the Forces of good computing be with you!

          RG

          PowerShell & VBA Rule!
          Computer Specs

          • #2190077

            RG i now get the popup screen. I also get a window with a load of error messages. I will look into this when I get a chance…

            🍻

            Just because you don't know where you are going doesn't mean any road will get you there.
    • #2190010

      I ran your latest version and got the following;

      Get-Date : Cannot bind parameter ‘Date’. Cannot convert value “15/2020” to type “System.DateTime”. Error: “String was
      not recognized as a valid DateTime.”
      At E:\Downloads\Get-WinVer.ps1:670 char:28
      + $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      + CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
      + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Commands.GetDateCommand

      You cannot call a method on a null-valued expression.
      At E:\Downloads\Get-WinVer.ps1:670 char:34
      + $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      + ~~~~~
      + CategoryInfo : InvalidOperation: (:) [], RuntimeException
      + FullyQualifiedErrorId : InvokeMethodOnNull

      Get-Date : Cannot bind parameter ‘Date’. Cannot convert value “29/2020” to type “System.DateTime”. Error: “String was
      not recognized as a valid DateTime.”
      At E:\Downloads\Get-WinVer.ps1:670 char:28
      + $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      + CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
      + FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Commands.GetDateCommand

      You cannot call a method on a null-valued expression.
      At E:\Downloads\Get-WinVer.ps1:670 char:34
      + $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
      + ~~~~~
      + CategoryInfo : InvalidOperation: (:) [], RuntimeException
      + FullyQualifiedErrorId : InvokeMethodOnNull

      and yet copied to the clipboard was;

      Edition: Windows 10 Pro 64-bit

      Version: 2004

      Build: 19041.113

      Installed: 05/01/2020 11:22

      • #2190063

        A1ex,

        Would you mind running this command in a regular command prompt: wmic qfe list ?

        How are the InstalledOn dates presented?

        If you could also run: wmic qfe list > test.text and send me the file that would be helpful.

        Also what is your local date format?

        What mine looks like:
        WMIC-QFE

        HTH 😎

        May the Forces of good computing be with you!

        RG

        PowerShell & VBA Rule!
        Computer Specs

      • #2190084

        A1ex,

        You won’t believe this but I found the problem and it’s the version of windows you are using!

        The code as posted:

        $AMArgs = @{MemberType = "NoteProperty"
                         Name       = "InstalledOn"
                         Value      =
                         $(Get-Date($x[$($Cntr)].Substring(132,10).Trim())
                          ).ToString("yyyy/MM/dd")
                         Force      = $True}

        Works on Windows 64-bit Version 18363.657 & 183363.719 Pro

        However I discovered on my laptop running Windows Version 64-bit 18363.693 Home that the date string starts at index 134 of the string!
        Who would have thought?
        So to solve the problem I added a line to find the index of the “InstalledOn” column and changed the substring function to use that column as follows:

        $InstIndex = $x[0].IndexOf("InstalledOn")				 
        
             $AMArgs = @{MemberType = "NoteProperty"
                         Name       = "InstalledOn"
                         Value      =
                         (Get-Date($x[$($Cntr)].Substring($InstIndex,10
                          ).Trim())).ToString("yyyy/MM/dd")
                         Force      = $True}
        

        I was going to post the code with this post but decided I’d index all of the column titles to avoid future problems. I’ll post the code as soon as the coding & testing are done.

        HTH 😎

        May the Forces of good computing be with you!

        RG

        PowerShell & VBA Rule!
        Computer Specs

        • #2190162

          I would believe it, I once tried to write a bat file that would ping a rang and return those that were at the moment present. Each different Windows version had a different command com…

          🍻

          Just because you don't know where you are going doesn't mean any road will get you there.
    • #2190177

      Ok Y’all,

      Here’s the updated version which has been tested on both Pro 18363.720 (just got update today from yesterday’s version .719!) and Pro 18363.657 both 64-bit and Home 18363.719.
      I’ve also cleaned up a few presentation things.

      Get-Winver.ps1 V4.10 Get-WinVer-V4-1.
      Along the way I did some research on my machines and I’ve found that Windows does not consistently report updates, e.g. depending on how you look for them you get different answers! Here’s a table from the information provided by the Home 18363.719 laptop.
      Win-Update-Data-Comparison

      Sure wish MS would get their act in order!
      HTH 😎

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

    • #2190552

      Hey Y’all,

      Here’s another version 4.2. I just discovered a PowerShell CmdLet that retrieves the Hot Fixes so I no longer have to parse strings. Cut almost 40 lines of code!

      Get-WinVer 4.2 Get-WinVer-V4-2
      HTH 😎

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

    • #2242105

      Hey Y’all,

      Here the latest version 4.40 the only change is the tables being updated for the 4/14/2020 updates.

      2242106: Get-WinVer4-4
      .zip MD5: D9195FCE6DF653A7CD1F2365E0391899
      .ps1 MD5: F84CB0123E6D00D1478287F6F94EE868

      HTH 😎

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

    • #2271088

      Hey Y’all,

      Here’s the latest version of Get-WinVer.ps1. It now has entries for the update I just got to 18363.900 and also for the 2004 (19041.329). I still don’t have a KB for (19041.264).

      Note all the other versions back to 1607 also got updates dated 6/9/2020 and are reflected in the program.

      1909-00

      2271090: Get-WinVer
      .zip MD5 Hash: 0D2CBF773789DBBFD76FCF9F037DDBEE
      .ps1 MD5 Hash: 5BD453C8652B0C36C630D3C33FD6D446

      HTH 😎

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

    • #2280717

      Ok, here’s the latest with the 7/14/2020 updates no code changes just the data tables:

      Get-Winver.zip: Get-WinVer
      .zip MD5 Hash: CD41D103B464009FF50B3FC5C727D372
      .ps1 MD5 Hash: 3E347BBBB89B33EB57A83CB7C4E19AC1

      HTH

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

    • #2288802

      Get-WinVer updated with version info through 8/11/2020.

      2288803: Get-WinVer
      .zip MD5 Hash: 5A4362218FDAA18AFD43C35E2F35E490
      .ps1 MD5 Hash: C4F8F5C04C82C8F6CE620F9CA9A07B8E

      HTH 😎

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

    • #2326999

      Get-WinVer updated with version info through 01/09/2021.
      I’ve also added code to display the new identifiers along side the yymm indicators, i.e. 2009  20H2.
      Get-WinVer4-9

      Get-WinVer.zip: Get-WinVer
      .zip MD5 Hash: 2A3BDE2034A09E41A7AB3C90517430B4
      .ps1 MD5 Hash: 7CF39338F65BD720762819CDFDEE32D5

      HTH 😎

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

      2 users thanked author for this post.
      • #2327147

        I think I missed something which isn’t surprising- what do I do with the file in the zip download? How to install? How to use?

        Thank you for your patience and contributions.

    • #2327501

      Locate download Get-WinVer ZIP folder
      Right click ZIP folder
      Extract All
      Show extracted files when complete (optional)
      Extract
      Right click extracted file
      Run with Powershell
      Open

      3 users thanked author for this post.
      • #2327576

        How did you create your animated image? What package?

        Carpe Diem {with backup and coffee}
        offline▸ Win10Pro 2004.19041.572 x64 i3-3220 RAM8GB HDD Firefox83.0b3 WindowsDefender
        offline▸ Acer TravelMate P215-52 RAM8GB Win11Pro 22H2.22621.1265 x64 i5-10210U SSD Firefox106.0 MicrosoftDefender
        online▸ Win11Pro 22H2.22621.1778 x64 i5-9400 RAM16GB HDD Firefox114.0b8 MicrosoftDefender
    • #2328166

      This particular animated .gif was created in a program called ScreenToGif

      https://www.screentogif.com/

      It takes a little time to get to grips with it, but the results, quality wise, can be very good in my opinion.
      There has to be a trade-off though with quality and size when showing in online forums. The recorded capture size window, length of recording (in terms of seconds/minutes) and the resulting created GIF and kB/MB size (after editing) is also major factor.

      Different browsers have a part to play also. Modern browsers that use ‘similar’ standards are not so much an issue these days, but the likes of Internet Explorer versions render animations terribly and they can show very slow in comparison to say Firefox/Google etc.
      It’s only when you see an animation you have created and uploaded to say a forum, on someone else’s machine using their browser of choice, that you see how embarrassingly bad they ‘can’ look to ‘others’.

      3 users thanked author for this post.
    • #2338846

      Hey Y’all,

      Well, I got tired of having to post a new version of the code for Get-WinVer.ps1 every time an update came out, e.g. at least every month. So I decided to do a little research and coding and I’ve solved the problem. The program will now automatically download 2 files from my OneDrive account with the latest, at least if I’ve been on the ball, update information for Windows 10 versions that are still in support. If you don’t currently have internet access it will use the last downloaded version. I’ve tested this on PS 5 & PS7 and Win 10 Pro & Home.

      Should you click on one of the links and get a page not found please PM me so I can get the tables updated, I’m getting old and sometimes forget things! LOL

      Get-WinVer-1
      .zip MD5 Hash: F062483F84261307ABE97DF378D23123
      .ps1 MD5 Hash: 017451E1E6DD2E80290F7418D31AFE74

      I’d be interested in any comments you may have about the program. 😎

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

    • #2342302

      Hey Y’all,

      The online tables have been updated for todays Windows 10 updates. The next time you run the program it will have the latest data available.

      Please report any discrepancies! Editing those tables is hard on these old eyes. 😎

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

    • #2376255

      Hey Y’all,

      I just updated the data files for the Get-WinVer.ps1 program. This month I’ve also updated the program to deal with Microsoft’s failure to update the Release ID number from 2009 to 210x or 21H1. So this you’ll need to download the program again as the structure of the data tables has changed to implement this fix. You needn’t worry about downloading the new tables as the program does that for you automatically. Also note that I have deleted the information for all versions prior to 1804 as they are out of service and should not be used any longer.

      Get-WinVer
      .Zip MD5 Hash: 911B55133EE23E3C15D41E1309981693
      .ps1 MD5 Hash: B2E4843D04C5A207E6D2F50781E72B17 

      HTH 😎

      HTH

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

      1 user thanked author for this post.
    • #2381872

      Hey Y’all,

      Well I was just updating the data files for the Get-WinVer.ps1 program and I pulled one of those old age things! I edited the file on my computer rather than the copy on One Drive so when I uploaded the file it blew up the Link to the file embedded in the program. DUH!

      So if you use the program you’ll have to download it again with the updated link from here.
      Note: you can get the HASH codes from the file (File Hash Log.pdf) in the same folder as the program if you are so inclined to double check that you are getting a true copy.

      Sorry about that!

      HTH 😎

      May the Forces of good computing be with you!

      RG

      PowerShell & VBA Rule!
      Computer Specs

      1 user thanked author for this post.
    Viewing 19 reply threads
    Reply To: AutoHotkey – Create your own Win 10 'winver' (updated)

    You can use BBCodes to format your content.
    Your account can't use all available BBCodes, they will be stripped before saving.

    Your information: