Hello,
Welcome to our Microsoft Q&A platform!
We communicated with the engineer and got a response:
Most extensions in desktop bridge apps, including all of the shell extensions, must be loaded outofproc. This is based on documented Windows 7 and later best practices, but also technically necessary due to details of desktop bridge.
In the documentation of DesktopPropertyHandler see the following in the Remarks section:
Note that the Clsid
attribute from PropertyHandler
must match the ID attribute under the Class element in the SurrogateServer element from the COM registration in the app manifest.
So there is no need to have both x86 and amd64 version of the extension dll in a package.
Only one of these can be registered in the manifest, and it generally should be the same architecture as declared for the package (an x86 package can be deployed on an x86 or amd64 OS, and if the x86 package registers the amd64 version of its extension dll the extension will be broken on an x86 OS).
Since no version will be loaded inproc by the shell, it doesn’t have to match the architecture of the shell process, it just has to be an architecture supported by the OS.
Thanks