Thread of 7 posts
"The post is from 2017.
It's 2024 and it seems like a ridiculous reason for failure, this can't be it. Can it?"
https://learn.microsoft.com/en-us/archive/msdn-technet-forums/3d0c4382-9b48-4d28-9b79-25607e668074
In despair with no further clues, fast forward 3 hours removing on the pipeline any non-targeted satellite assemblies from both deployment and manifest and turns out that...
Yes, dear reader, that was it.
TL;DR: do not include Chinese localisations, even for dependencies on VSTO.
Bonus track 1:
VisualStudio 2022 does not include an "Application Files" button that makes it easy to exclude those satellite assemblies from the manifest on VSTO projects; some posts from back in 2019/2020 say "oh yeah, we wrote that down, thanks for helping us make a better VS!".
Documentation is so scarce that it wasn't worth it trying to do it "properly" and instead it was easier to hack the pipeline with an MSBuild hook.
Bonus track 2:
There exists a reasonable way to filter satellite assemblies by language!
BUT: VSTO doesn't support (kinda logical) .Net 8.0, so it is stuck with .Net Framework; which means that it doesn't benefit from a maintained build system and... Well, you can't use the nice things:
https://learn.microsoft.com/en-us/dotnet/core/project-sdk/msbuild-props#satelliteresourcelanguages
(took a bit to realise that the docs were for dotnet build and not MSBuild. It all makes sense, swear it '-.-)
And just for the funsies, bonus track 3:
This is a commercial product that I created about... 12 years ago?
And pretty much everything written here somewhat recently as if they were discovering something novel is... Well, true; and standard (scary!):
It's kind of ironic that (though not useful in my case, figured it out 12 years ago!) it seems to be the best practical documentation available for doing this kind of thing in a professional setting XD
Obviously Microsoft's documentation is extremely opaque about the actual details and important bits, so it is easy to understand why they think it's novel stuff.
There is A LOT of pain and there are many hurdles and entry-barriers in developing for MS.
By the time you have things working, you either don't have the will or time to document them publicly, or have turned all that into "institutional invisible knowledge".
I mean, nobody writes about it, so everyone must know how it works, right?
And final bonus track:
it is 2024 and since 2022 it has been known that new Code Signing certificates would *require* a hardware token in 2023, and MS hasn't even fixed their tooling for deployments.
Should have gotten an EV back then (more expensive, but nicer logo and longer expiry time), and never trusted that they'd figure it out by now (they haven't).
This is "ENTERPRISE" software, what Governments and institutions compare FLOSS against '^^. In comparison, #floss is MUCH more professional
Official end of rant, sorry for not using a CW >,<
It was a tad spontaneous and served both as a venting mechanism and as ethereal documentation imma use for later, more reasonable documentation, when not on an actual deadline.
