You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Sep 11, 2024. It is now read-only.
I got 0x8004_0154 (Class not registered) when trying to create an instance of DesktopWallpaper with CLSID C2CF3110-460E-4FC1-B9D0-8A1C0C9CC4BD, where the interface is IDesktopWallpaper (https://docs.microsoft.com/en-us/windows/win32/api/shobjidl_core/nn-shobjidl_core-idesktopwallpaper).
Upon experimenting in C++, I found that creating such instance requires dwClsContext of CLSCTX_LOCAL_SERVER instead of CLSCTX_INPROC_SERVER. I am wondering whether it is possible to customize how we want to create an instance, or can we use CLSCTX_ALL for better compatibility.
I got 0x8004_0154 (Class not registered) when trying to create an instance of
DesktopWallpaperwith CLSIDC2CF3110-460E-4FC1-B9D0-8A1C0C9CC4BD, where the interface isIDesktopWallpaper(https://docs.microsoft.com/en-us/windows/win32/api/shobjidl_core/nn-shobjidl_core-idesktopwallpaper).Upon experimenting in C++, I found that creating such instance requires
dwClsContextofCLSCTX_LOCAL_SERVERinstead ofCLSCTX_INPROC_SERVER. I am wondering whether it is possible to customize how we want to create an instance, or can we useCLSCTX_ALLfor better compatibility.Relevant code:
https://github.com/microsoft/com-rs/blob/master/src/runtime.rs#L124-L138