Category Archives: Windows 11

Using Get-WUHistory Requires Finesse

I’m a big fan of PowerShell. That’s why I was excited to learn about a collection of cmdlets from the PowerShell Gallery named PSWindowsUpdate. Chief among its constituents is a cmdlet named Get-WUHistory that I’ve been finding both helpful and vexing. I say that using Get-WUHistory requires finesse because it works well on Windows 10, but hangs on PCs with longer “history trails” in Windows 11. Let me explain and illustrate what that means…

Why Using Get-WUHistory Requires Finesse

I’m only running Windows 10 on one actual PC (not counting VMs). By chance, that’s where I started working with the PSWindowsUpdate cmdlets. To begin with, you’ll need to install this collection, using this command:

Install-Module -Name PSWindowsUpdate -Force

If you haven’t visited the PowerShell Gallery before, you’ll be asked to grant various permissions so your PC (or VM) can access and use its contents. If necessary, please do so. Then, your installation will complete. After it’s done, you can use the Get-WUHistory command (among others — see a complete list of all 25 cmdlets from this package).

There’s something going on in Windows 11 that will sometimes cause Get-WUHistory to “hang.” How can you tell? The output won’t complete, you won’t get a prompt back, and the cursor keeps blinking. Indeed, it doesn’t even respond to CTRL-C to terminate the command. You must close the open PowerShell window (or tab) to regain control over Windows Terminal.

What’s the Trick to Make Things Work?

For some odd reason limiting the scope of output keeps the Get-WUHistory cmdlet working. Thus, in Windows 11 instead of simply entering Get-WUHistory at the command line, try this version instead:

Get-WUHistory -last 1000

This tells the cmdlet to limit its output to only the first 1000 entries it finds in the update history. Notice that on one of my test PCs, the actual number of entries in the update history is only 157 items, yet the command hangs anyway — except when it’s scoped. Go figure!

Unless scoped [-last 1000] Get-WUHistory hangs on Windows 11.

The lead-in graphic shows the first screen of output from a scoped version of the Get-WUHistory cmdlet. Notice that most of the updates relate to Windows Security (Windows Defender intelligence updates, antimalware platform updates, and so forth). Too much chaff, not enough wheat, IMO. Here’s a way to turn down the volume…

Reducing Get-WUHistory Output Volume

One can, of course, filter Get-WUHistory Output — in addition to limiting its scope — to reduce the output volume. Here’s a command string I found to be incredibly helpful in seeing what’s there, sans security-related stuff:

Get-WUHistory -last 1000 |
Where-Object {$_.Title -notlike "*Security*"}

What you see broken across two lines (or more) in the preceding is actually a single (if complex) PowerShell command string. Be sure to remove or ignore any internal line breaks when running this inside Windows Terminal. You’ll get back a mercifully much shorter list of items, mostly cumulative updates (CUs), MSRTs, Update Stack Packages, and the odd antimalware platform update. As you can see, this cuts 157 items down to a more manageable 12. Good stuff!

Eliminating the word security in the “Title” field filters out most of the dross. [Click image for full-sized view.]

Facebooklinkedin
Facebooklinkedin

Persistent Windows Intelligence Update Failure

For the past two weeks and more, I’ve had a recurring problem on one of my Canary Channel Insider Preview test PCs. On that Lenovo ThinkPad X380 Yoga, each time I run WU the same error appears upon completion. It reports a specific installation error  — namely 0x80070057 for a so-called “Windows Intelligence Update.”  And despite all my research and repair attempts — including use of TenForums excellent reset/re-register batch file — nothing has cleared this error message. That’s why I see it as a persistent Windows Intelligence Update failure mystery.

Handling a Persistent Windows Intelligence Update Failure

I’ve been hoping — perhaps against the odds — that some new feature update would fix this issue. But so far, it hasn’t. What makes this whole thing a mystery is that you can find these failures in Update history, they still don’t help illuminate things much.  Here’s a snapshot, which I’ll explain afterward as best I can:

Persistent Windows Intelligence Update Failure.other-history

Turns out this update shows up under “Other Update” but it references no related KB number.

Notice that the error repeats thrice (3) on both reported days. Though it’s been going on far longer than August 10 and 11, that’s all the information about this error that shows up in this update history view. Even checking alternate views using the old-fashion wmic command or the Get-WUHistory PowerShell cmdlet fail to shed further light What really vexes me is that this type of update includes no corresponding Knowledge Baase article number to explain what it is and what it does.

About that Error Message

If you look up the error code online, you’ll find a MakeUseOf story that includes these suggestions (I have bolded the one I think applies here):

Error 0x80070057 usually occurs when:

  • You are trying to back up your files, and there is corruption.
  • You are trying to install a Windows operating system and the System Reserved Partition is corrupted.
  • Corrupt registry or policy entries are interfering with the Windows Update process.
  • There were some problems installing updates, and the system will attempt to try again later.

Alas, this doesn’t tell me much about how to fix the underlying issues which have now persisted through two feature updates. I’ve attempted to fix the disk structure, run both dism /restorehealth and sfc /scannow, used the TenForums reset-reregister-WU batch file, and even run an in-place repair install. Nothing has worked. This remains a mystery despite my various attempts to find and fix things. If I can’t come up with another strategy soon, I may just perform a clean install and start over. Time will tell.

And that’s the way things go here in Windows-World. Sometimes you fix the error, and sometimes you have to extirpate it by starting over afresh.

Note Added August 18

Sometime earlier this week, this mysterious failure disappeared. I’m now able to run WU sans error messages of any kind. My WU update history shows no more failure messages either — but I do see two successful “Windows Intelligence Updates” therein. One’s on August 11 (the very day I filed this item); the next is on August 17 (yesterday). Even a more detailed examination with Get-WUHistory fails to turn those earlier issues up (but then, it got upgraded a couple of days ago. I think that clears earlier update history).

Facebooklinkedin
Facebooklinkedin

Winget Version Numbering Hiccup

Here’s an odd, but interesting, Winget situation. While setting up the replacement Lenovo  ThinkPad P16 Mobile Workstation, I installed CrystalDiskMark (standard “free” version). As you can see in the lead-in graphic, the maker’s website gives it a version number of 8.0.4c. This causes an interesting winget version numbering hiccup, because its manifest contains numbers only (8.0.4) rather than the complete version designator (8.0.4c). This causes an error when running the “do-everything” winget command — namely:

winget upgrade --all --include-unknown

The upgrade command grinds along for a good long while — several minutes, in fact — before it fails with an unexpected error, like so:

Winget Version Numbering Hiccup:c-error

Apparently, the manifest points to a badly-formed or MIA URL, so the upgrade can’t proceed.

Overcoming Winget Version Numbering Hiccup

Attempts to specify an version number (8.0.4), along with an explicit ID (CrystalDewWorld.CrystalDiskMark) likewise fail to complete  (same error message). Then it gets more interesting:

Winget is happy to uninstall the 8.0.4c version, as long as I specify it explicitly.

But winget won’t install CrystalDiskMark, so the only option is to download and install the maker’s version — which doesn’t work with winget right now. I’m communicating this to the winget team (via Demitrius Nelon). Hopefully they’ll figure out a fix. I figure the version number mismatch between the manifest (8.0.4) and the maker’s actual number (8.0.4c) is what’s causing the issue. As soon as that gets resolved, I image things will start working as they oughter.

We’ll see!

Facebooklinkedin
Facebooklinkedin

Foiling False Upgrade Positives

I use a collection of tools to keep my Windows fleet updated. These include winget (in PowerShell), plus KC Softwares’ Software Update Monitor (SUMo) and PatchMyPC Home Updater. Occasionally one or more of these tools will throw a “false positive” — that is, report an update that doesn’t exist. When that happens I have my way of foiling false upgrade positives to prevent wasting time. Let me explain…

About Foiling False Upgrade Positives

This is a case where one tool can occasionally backstop another, so that one tool’s claim of an existing upgrade can be challenged successfully. Case in point: the item SUMo reported this morning, which refers to a new version of Microsoft PC Manager numbered 3.4.6.0 — look at the lower right in the lead-in image above. A quick hop to the home page for Microsoft PC Manager (Beta), a download (you’ll find two buttons there), and display of Properties details from that  download shows:Foiling False Upgrade Positives.pcmgrproperties

Notice the version number reads 1.2.4.22027. Compare that to the “Version” column in SUMo: same!

Likewise, when I turn to winget inside PowerShell, I use its “list” command to show me what’s on my machine, then use its “show” command to show me the latest manifest in its public database. Again, both agree. That tells me pretty unequivocally that the latest version is indeed 1.2.4.22027 — and that’s the one I’ve already got. SUMo, in asserting that version 3.4.6.0 is the most current, is somewhere off the beaten track.

What Now, Young Jedi?

I’ve got Kyle Katarn’s email and twitter feed at my disposal. So when something like this happens with SUMo I send him a message saying what SUMo reports and what the software maker (MS in this case) tells me. He’s usually very quick about fixing false positives (on a same-day basis, in fact). Ditto for issues with winget (I likewise interact with Demitrius Nelon, Winget Team Lead at MS). He is also responsive to feedback, and often provides same-day fixes as well. So far, I’ve not yet had a false positive experience with PatchMyPC (but it covers far fewer software items than SUMo’s 400+ and winget’s 2000+ manifests).

Good stuff!

Note Added August 9 Afternoon

At 4:15 PM Central (-05:00 GMT) Mr. Katarn sent me a message this item had been fixed. Ran SUMo again, and sure enough: the false positive is gone. THAT’s what I call customer service…

Facebooklinkedin
Facebooklinkedin

Replacement P16 Goes Through Intake

OK, then: I started working on the replacement Lenovo ThinkPad P16 Gen1 Mobile Workstation. It showed up at the house on Friday afternoon. Because I was on deadline I didn’t get to begin until Saturday afternoon. I kicked things off upon return from our usual weekend food shopping trip.  As this replacement P16 goes through intake here at Chez Tittel, I’ve been keeping track of what (and how) I put it back to work. That started yesterday, for an upcoming AskWoody story about USB3/4 interfaces. Buckle up: there’s a lot to cover…

Following Along as Replacement
P16 Goes Through Intake

The unit appears with a password-less login into a Lenovo account, to make it easy for reviewers to get in and start working. I always add an admin account tied to one of my Microsoft logins and switch over to that going forward. Then I logged into my office WAP for a Wi-Fi connection, and made sure everything was up-to-date. The very next item was a Macrium Reflect install (commercial license) so I could capture a pristine backup to an external TB4 USB-C attached NVMe drive.

After the initial snapshot was saved, I added a bunch of applications using the PatchMyPC Home Updater. It’s as good at new installs as it is at updating the applications it knows how to handle. Here’s the list of what I used it to install:

7-Zip                 CrystalDiskMark        IrfanView
8GadgetPack           VoidTools Everything   SUMo
Advanced IP Scanner   FileZilla              Revo Uninstaller
CPUID CPU-Z           Google Chrome          Speccy
CrystalDiskInfo       GPU-Z                  WinAero Tweaker

There were a few other odds-n-ends I had to grab to customize Windows Terminal to my usual set-up. This meant using Install-program to install Winfetch, downloading and installing nerd fonts, then going through the OhMyPosh set-up drill to customize my Windows Terminal prompt. I also checked device drivers (and updated the BIOS [UEFI] to version 1.21, using Lenovo Commercial Vantage). A quick download and check of the Intel DSA updated my Arc graphics, Wi-Fi and Bluetooth drivers and supporting software, too. Total time invested: somewhere between 7 and 8 hours over 2 days.

All’s Well … and Working Well, Too!

Yesterday I started working on my AskWoody story and learned a few things I didn’t know about the already familiar P16 ThinkPad. This unit has 64GB RAM (rather than the 128GB as in its predecessor).  USB-A Port 5 (see tech specs) is supposedly USB 3.2 but behaved like USB 2 when I ran CrystalDiskMark on an mSATA device. It jumped to more normal non-UASP SSD speeds when I used a USB-AtoC converter and plugged it into Port 10.2 which is listed as a pair of TB4/USB4 USB-C ports on the rear edge of the laptop. Much better!

So now, I’m back at work and making headway using the replacement P16. Once again, my thanks to the Lenovo Reviews team for their prompt and friendly turnaround on restoring my ability to work (and test) unfettered on this beast of a laptop. Go team!

Facebooklinkedin
Facebooklinkedin

Some Deletions Are Easier Than Others

Whoa Nelly! I just came off a Windows filesystem adventure. Apparently, the 2TB 2.5″ HDD used for peripheral storage on the Boss’s Dell SFF D7080 PC once served somebody as a system disk. That’s the only way I can explain how two System-owned folders named ProgramData (hidden, too) and Users popped up thereupon. Making them go away led to this post’s title — namely, some deletions are easier than others. Let me explain…

Why Some Deletions Are Easier Than Others

Part of the difficulty stems from Dell, and part from Windows. On the D7080 to get into WinRE from bootable media, you must first disable Secure Boot. This allowed me to boot from “Alternate Media” — in this case, the Macrium Reflect Rescue Media, from whence I ran its Command Prompt facility.

Part of the difficulty comes from Windows. It really, really wants to make it hard to delete System-owned folders like the ones on the Boss’s F: drive for very good reasons. Unwanted deletion could render programs (in the case of ProgramData) and perhaps even the OS (in the case of Users) unusable. Consequently, one must go to great lengths to remove such folders, even on disks no longer playing the system/boot role. Sigh.

Two Quick Secrets Solve the Command-Line Puzzle

To remove the two directories (and their plethora of sub-folders) I had to use this command syntax:

rmdir /s path-spec

where one spec was F:\ProgramData and the other F:\Users. To confirm the presence of the hidden F:\ProgramData; item, I first had to run this command, though:

dir /a:h

That shows items with a “hidden” attribute, along with those more easily viewed.

How I Got to the Finish Line

So first, I had to turn off Secure Boot. That required the following sequence of activities. I went into Start → Settings → Recovery; and clicked the “Restart now” button under the “Advanced Startup” heading. First reboot. From there I clicked Troubleshoot, then the UEFI Firmware Settings option. Second reboot, whereupon I went into the UEFI/BIOS and disabled “Secure Boot” under that self-same heading. Save the change, then third reboot.

Next, I plugged the Macrium Rescue Disk UFD into the D7080. I rebooted (4th time) into its embrace by starting once again with Start → Settings → Recovery; and clicked the “Restart now” button under the “Advanced Startup” heading. Inside the WinRE menu that serves as the lead-in graphic above, I picked “Use a device.” Next, I elected the Mushkin UFD in the alternate boot selections and booted into that environment (5th reboot). There, I ran the Command Prompt facility. Inside that facility I used the afore-described commands to find and delete the system-owned folders. Then I exited Command Prompt and the Macrium Rescue Disk environment. That led to the 6th reboot.

This took me back into Windows, where I used the System → Restore → etc. sequence again to get back into WinRE main menu. 7th reboot. To undo Secure boot, I had to once again pick UEFI Firmware Settings, then reboot again (8th), find the “Secure Boot” option and re-enable it. Save the settings, exit UEFI and reboot for the last time. NINE (9) reboots in all to delete a couple of folders. Sheesh!

But gosh, isn’t that just the way things sometimes go, here in Windows-World. Making the world safe for system-owned folders is hard work. So is making them disappear…

Facebooklinkedin
Facebooklinkedin

Send It Back: P16 Goes Home

I’ve been in a pickle since I returned from our family trip this weekend. My beloved and heavily-used Lenovo ThinkPad P16 Mobile Workstation got caught in a “doom loop.” When I asked the reviews team what to do about it, they asked for its return. When they said “Send it back,” P16 goes home to its maker. Now, let me explain what prompted this action.

Why Send It Back: P16 Goes Home

My “doom loop” was insidious because the machine wouldn’t restart. When I instructed it to do so through any and all means (see list), it would hang on the “spinning balls” labeled Restarting, and spin forever. Of course, that greatly limited my repair options, since I couldn’t get at repair stuff through the OS. Before I explain how I would’ve gotten over that hump, let me explain what I tried:

  1.  The Restart option via Start → Power button → Restart
  2. Various other equivalents via the command line (e.g. shutdown /r ...).
  3. Recovery capabilities via Start → Settings → System → Recovery → Advanced startup → “Restart now” button

I even made registry tweaks to turn off Fast Startup and performed an in-place upgrade repair install. None of this worked. I happened to mention this to a member of the reviews team who was working with another review unit I’d just returned to their North Carolina depot. He asked me to return the unit so they could understand what happened. So that’s what I did: I’m expecting a replacement to show up today.

What Would Have Been Next…

While the P16 wouldn’t restart, it would shut down. Thus, I would have shut down, then booted into the BIOS (strike the Enter key during the boot load phase and you still get into the UEFI/BIOS menus). Then, I would’ve attempted repairs from a repair disk of one kind or another (Macrium, Kyhi, DaRT, and more: I’ve got all of them accessible on my Ventoy USB-C NVMe enclosure). Failing repair, I’d have wiped the drive and done a clean reinstall of Windows 11. That pretty much always works.

Instead I’ll unpack a replacement unit later today and restore my most recent backup image from the old machine to the new. That should put me back where I was with minimal time and effort. Stay tuned: I’ll report back on those efforts next week.

Life is always interesting here in Windows-World. That goes double when you have a great group of people like the Lenovo reviews team backing you up!

Out with the Old, In with the New

The replacement unit showed up after lunch Friday (August 4). I didn’t get started on setup, app installs and customization until Saturday (August 5). I’ll be blogging about my adventures with the machine and its specs tomorrow (August 8) as a kind of auto-birthday present (my age will be a prime number greater than 67 and less than 73). TLDR version: great fun, lots of stuff to do, and some interesting nits to pick. However, the new unit restarts without any difficulties. Thanks again, Lenovo Reviews Team: you rock!!!

Facebooklinkedin
Facebooklinkedin

Copilot Goes General in Beta Build 22631.2129

It’s heeeeeere! With yesterday’s release, Copilot goes general in Beta Build 22631.2129. I wondered what the new left-hand icon on the notification bar was for. And indeed, it’s a reduced size version of the app icon that appears in the lead-in graphic above. That’s one mystery quickly resolved, at least. But there’s a lot to like about Copilot so buckle up!

If Copilot Goes General in Beta Build 22631.2129, Then?

The WinKey+C combination also calls up Copilot which looks (and acts) pretty much exactly the same as the Bing ChatGPT pane in MS Edge. Indeed, when I ask it how to clear my search history, it tells me to go to the Bin Search history page and clear my history. This works, but requires a page refresh to clear things up. Fascinating!

Copilot Goes General in Beta Build 22631.2129.example

Under the hood, Bing Chat and Copilot share the same search history. Clearing the former also clears the latter.

Ride that Hobby Horse!!!

This heading explains what I plan to keep doing extensively and heavily in the days and weeks ahead. I’ve been waiting for MS to turn the lens of AI onto the OS and apps for a long time now. So far, it’s been pretty darn helpful even as I’m figuring out how best to use it. I hope they’ll also make best practices, tips and recommendations available on that very topic. But I plan on giving it — and myself — a strenuous workout as I get to know this new and welcome addition to Windows 11. Stay tuned, and I’ll keep you posted.

Note Added ~4:30 PM Same Day

I wrote a reasonably technical article on SuperMicro GPU servers built around NVIDIA GPUs and supporting network technologies for Remote Direct Memory Access (RDMA) today. Copilot proved pretty darn helpful in running down some nit-pick details about speeds and feed for NVLink, InfiniBand, and high-speed Ethernet. Very, very interesting!

Facebooklinkedin
Facebooklinkedin

PowerToys Sources: WinGet & MSStore

I saw yesterday on Twitter (X?) that PowerToys version  v.0.72.0 dropped. So I started banging on WinGet to upgrade me. It’s been at least 20 hours since that announcement, but WinGet still has no manifest for the new version. Indeed, the lead-in graphic shows v.0.71.0 as current. But there are two PowerToys Sources: WinGet & MSStore. And sure enough, installing the Store version brought one of my Lenovo X380 ThinkPads up to the latest iteration. This features in the lead-in graphic as well. The second WinGet list PowerToys command shows the current version installed — with a WinGet source, no less — after I downloaded and installed the latest version from the MS Store. Go figure!

Why Two PowerToys Sources: WinGet & MSStore?

The answer to the preceding query depends on how organizations do updates internally. Those who let WU and the MS Store handle things should choose the Microsoft Store version of MS apps when they can. This will automatically handle things on its own. But those who control updates will find WinGet invaluable. It makes a great focus for automation via PowerShell scripts as and when their update windows open.

Does that mean one or the other source for updates is better? Not at all. But today, it looks like the updates through the MS Store track new releases faster than WinGet does — for PowerToys, at least. I’m also interested that even though my update comes from the store, it shows WinGet as its source. But as long as it’s updated quickly and correctly, that’s OK.

Facebooklinkedin
Facebooklinkedin

New Explorer Address Bar Is Too Spread Out

In working with the new-look File Explorer in the Beta Channel Insider Preview, I’ve come to a conclusion. It stands as the title for this blog post — namely, this: the new Explorer Address Bar is too spread out. IMO, anyway. Take a look at the lead-in graphic to see what I mean (new address bar top, old address bar bottom).

Why Say: New Explorer Address Bar Is Too Spread Out

The top of the image shows the address bar consuming about 3.8″ of the total 8.5″ display on-screen. By contrast, the bottom shows it consuming 3.125″. That’s a 21.6% bump in on screen size, most of which comes from wider spacing between path elements (and the > symbol that replaces the \ in a fully-formed directory path). Here are the paths for the two contrasting folders themselves:


new-style: C:\Utils\PowerPlans
old-style: F:\Nirlauncher\NirSoft\x64

This observed, the text displayed inside the address bar for File Explorer for each version is a little different, as you can confirm by inspection:

new-style: This PC > Local Disk (C:) > Utils > PowerPlans
old-style: This PC > OCZ3-120 (F:) > Nirlauncher > Nirsoft > x64

The upper display consumes more screen space than the lower even though it’s shorter (46 characters in the upper line; 53 on the lower, counting each space as a single character). Thus, it’s even more spread out than the visuals show by direct comparison. Because the upper string is 15% shorter, the expansion comes to roughly 40% (multiply 1.15  by 1.216).

Is Brevity the Soul of Wit?

Methinks that a more compact address bar makes it easier — and faster — to consume its contents. I’d urge MS to offer a compact version of the address bar as a tweak in future releases. If they don’t, somebody will probably do so in an add-on tool (e.g. WinAero Tweaker). I guess we’ll have to wait and see what happens, perhaps in the upcoming 23H2 version of Windows 11. To that end, I hope somebody at MS is listening…

Note Added August 3

One person who read this post suggested that this spacing is designed to make touch access to the address bar easier. I buy the notion that added spacing makes touch more effective. But I still think MS should add a “compact address bar” option to its File Explorer controls so that those not using touch can elect a more condensed presentation if they want it. ‘Nuff said…

Facebooklinkedin
Facebooklinkedin