Jordan Borean
jborean.bsky.social
Jordan Borean
@jborean.bsky.social
This is because for a 32-bit process C:\Windows\System32 is really the C:\Windows\SysWOW64 folder. They do this to ensure that 32-bit dlls can be present and the assumption that C:\Windows\System32 points to dlls that it can load learn.microsoft.com/en-us/window...
File System Redirector - Win32 apps
The windir \\System32 directory is reserved for 64-bit applications on 64-bit Windows.
learn.microsoft.com
November 17, 2025 at 4:53 AM
Also don’t use the static field here as it’s UTF 8 with a BOM. Use `[Text.UTF8Encoding]::new()` instead.
November 14, 2025 at 11:02 PM
$OutputEncoding is for piping data into binaries like `"value" | foo.exe`. Using `>` to redirect to a file is an alias for `| Out-File $path` and on WinPS the default encoding here was UTF-16/Unicode. Pwsh 7 now defaults to a BOM-less UTF-8. You can use $PSDefaultParameterValues to change > on WinPS
November 14, 2025 at 11:01 PM
You can do both in PowerShell if you wanted to. The param block is mostly the default because parameter declarations get a bit long and honestly is there really too much of a difference doing it on the function name line or just below it.
November 6, 2025 at 9:45 AM
How long is a piece of string? Very hard question to answer without seeing what you are wanting to port.
October 23, 2025 at 7:50 PM
What do you have that still requires PowerShell 2.0? It's been 13 years since PowerShell 3.0 was released and nearly 10 since 5.1.
October 15, 2025 at 3:35 AM
... I can't reconcile the willingness to provide write access to something that can generate anything. At least with it providing the queries in ask mode I can vet it by actually looking at it.
October 15, 2025 at 3:34 AM
To me it's just a step too far for convenience's sake. What happens if you are too liberal in your allow list and allow things like multiple statements where the first is a SELECT but the second is something that modifies the data. I'm all for using AI but ...
October 15, 2025 at 3:34 AM
I still have a really hard time trusting an MCP implementation that has some sort of write access. It’s hard enough trusting 3rd party code now I need to trust something that can generate who knows what.
October 15, 2025 at 3:28 AM
MVP, gotta start somewhere :)
October 15, 2025 at 2:57 AM
Maybe they'll add support for running INSERT, UPDATE, DELETE, etc first before doing SELECT :P
October 15, 2025 at 2:12 AM
Joys of env vars being a process wide concept. Another reason why I wish pwsh had a way of setting env vars in line when executing a new process as thread jobs will step on each others toes if you tried to do a similar thing
October 1, 2025 at 6:35 PM
I've heard this before, time to tell if the real world numbers actually stack up and battery life gets close to Apple's offering. Would love some actual competition in the laptop space so we aren't just forced to use Macbooks if we want decent performance and battery life.
September 30, 2025 at 12:01 AM
The trouble is that it can be more than just a number. A DateTime is a ValueType yet you probably wouldn't consider it to be one. Any structs are ValueTypes yet structs look more like a property bag object.
September 29, 2025 at 11:58 PM
That description really seems like the typical Azure module docs to me. Like what exactly is a “value” here. What scenarios are you finding it useful for determining if it’s a value vs reference type.
September 29, 2025 at 11:19 PM
Even that probably won’t help. Seems like Microsoft hates PowerShell
September 23, 2025 at 8:38 PM
I still use Pester even with my binary modules. It's been good enough for me really but I've been using it since the early v4 days so I've probably gone blind from just time. PSScriptAnalyzer definitely needs some competition but try out github.com/JustinGrote/... for installing packages.
GitHub - JustinGrote/ModuleFast: A "fast and loose" way to install modules from Powershell Gallery quickly. Meant for CICD, not production
A "fast and loose" way to install modules from Powershell Gallery quickly. Meant for CICD, not production - JustinGrote/ModuleFast
github.com
September 23, 2025 at 1:04 AM
As for -EncodedCommand’s encoding. It can’t really change for backwards compatibility. There would have to be an extra arg added to control what encoding the base64 bytes represents.
September 21, 2025 at 6:54 PM
It’s “defacto” because it’s essentially the Unicode encoding that most modern tools default to these days. Even pwsh 7 thankfully uses it when interacting with files without a BOM. Windows and Microsoft tech from the 00s just use UTF-16 it was built at a time where UCS2 was seen as the future.
September 21, 2025 at 6:52 PM
If you are talking about -EncodedCommand in pwsh then yea it uses Utf-16-le encoded bytes. Sucks yea because now it uses more chars for normal ASCII based scripts but the joys of a product built before UTF-8 became the de facto standard :(
September 21, 2025 at 6:29 PM
Nearly running out of fingers for this shortcut. Need to up my twister game.
September 11, 2025 at 7:24 PM
They are a binary file with the structure documented under learn.microsoft.com/en-us/opensp.... The COM application is explorer’s way of exposing how to manage them under a public API.
[MS-SHLLINK]: Shell Link (.LNK) Binary File Format
Specifies the Shell Link Binary File Format, which contains information that can be used to access another data object. The
learn.microsoft.com
September 11, 2025 at 6:14 PM
Windows PowerShell has an alias for curl to the cmdlet Invoke-WebRequest but Windows itself has a full blown curl.exe which runs natively on Windows and is the curl you all know and love. The curl alias in PowerShell predated curl.exe in Windows by many years.
September 3, 2025 at 6:57 PM