-
Notifications
You must be signed in to change notification settings - Fork 134
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Broken on Fast Ring (20270+) because of FC_USER_MARSHAL parameter changes #55
Comments
anaisbetts
changed the title
Broken on Fast Ring (20270+)
Broken on Fast Ring (20270+) because of FC_USER_MARSHAL parameter changes
Dec 9, 2020
The interface appears to have changed yet again in 21313: //Every version the Interface changes, this is the 21313 version
class __declspec(uuid("b2f925b9-5a0f-4d2e-9f4d-2b1507593c10")) IVirtualDesktopManagerInternal_21313 : public IUnknown {
public:
virtual HRESULT __stdcall Proc3(PVOID* p0, int64_t* p1);
virtual HRESULT __stdcall MoveViewToDesktop(IApplicationView* p0, IVirtualDesktop* p1);
virtual HRESULT __stdcall Proc5(IApplicationView* p0, int64_t* p1);
virtual HRESULT __stdcall Proc6(PVOID* p0, IVirtualDesktop** p1);
virtual HRESULT __stdcall GetDesktops(PVOID* p0, IObjectArray** p1);
virtual HRESULT __stdcall Proc8(IVirtualDesktop* p0, int64_t p1, IVirtualDesktop** p2);
virtual HRESULT __stdcall SwitchDesktop(PVOID* p0, IVirtualDesktop* p1);
virtual HRESULT __stdcall CreateDesktopW(PVOID* p0, IVirtualDesktop** p1);
virtual HRESULT __stdcall Proc11(IVirtualDesktop* p0, PVOID* p1, int64_t p2);
virtual HRESULT __stdcall RemoveDesktop(IVirtualDesktop* p0, IVirtualDesktop* p1);
virtual HRESULT __stdcall Proc13(GUID* p0, IVirtualDesktop** p1);
virtual HRESULT __stdcall Proc14(IVirtualDesktop* p0, IObjectArray** p1, IObjectArray** p2);
virtual HRESULT __stdcall Proc15(IVirtualDesktop* p0, PVOID* p1);
virtual HRESULT __stdcall Proc16(IVirtualDesktop* p0, PVOID* p1);
virtual HRESULT __stdcall Proc17(PVOID* p0);
virtual HRESULT __stdcall Proc18(IApplicationView* p0, IApplicationView* p1);
virtual HRESULT __stdcall Proc19(int64_t* p0);
}; |
😭😭😭😭, I wonder what that PVOID* at the beginning of those methods are, that's new |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
It appears that many Virtual Desktop interfaces now prepend an FC_USER_MARSHAL parameter as their first parameter (breaking the "never change COM interfaces contract!")
The text was updated successfully, but these errors were encountered: