Skip to content
Michael edited this page May 6, 2018 · 12 revisions

Updated interfaces in Windows 10 build 17134 and 17661

Build 17134 IApplicationView

    `[ComImport]`
`[Guid("871F602A-2B58-42B4-8C4B-6C43D642C06F")]`
`[InterfaceType(ComInterfaceType.InterfaceIsIInspectable)]`
`public interface IApplicationView`
`{`
	`int SetFocus();`

	`int SwitchTo();`

	`int TryInvokeBack(ref IntPtr /* IAsyncCallback* */ callback);`

	`int GetThumbnailWindow(out IntPtr hwnd);`

	`int GetMonitor(out IntPtr /* IImmersiveMonitor */ immersiveMonitor);`

	`int GetVisibility(out int visibility);`

	`int SetCloak(APPLICATION_VIEW_CLOAK_TYPE cloakType, int unknown);`

	`int GetPosition(ref Guid guid /* GUID for IApplicationViewPosition */, out IntPtr /* IApplicationViewPosition** */ position);`

	`int SetPosition(ref IntPtr /* IApplicationViewPosition* */ position);`

	`int InsertAfterWindow(IntPtr hwnd);`

	`int GetExtendedFramePosition(out Rect rect);`

	`int GetAppUserModelId([MarshalAs(UnmanagedType.LPWStr)] out string id);`

	`int SetAppUserModelId(string id);`

	`int IsEqualByAppUserModelId(string id, out int result);`

	`int GetViewState(out int state);`

	`int SetViewState(int state);`

	`int GetNeediness(out int neediness);`

	`int GetLastActivationTimestamp(out long timestamp);`

	`int SetLastActivationTimestamp(long timestamp);`

	`int GetVirtualDesktopId(out Guid guid);`

	`int SetVirtualDesktopId(ref Guid guid);`

	`int GetShowInSwitchers(out int flag);`

	`int SetShowInSwitchers(int flag);`

	`int GetScaleFactor(out int factor);`

	`int CanReceiveInput(out bool canReceiveInput);`

	`int GetCompatibilityPolicyType(out APPLICATION_VIEW_COMPATIBILITY_POLICY flags);`

	`int SetCompatibilityPolicyType(APPLICATION_VIEW_COMPATIBILITY_POLICY flags);`

	`int GetSizeConstraints(IntPtr /* IImmersiveMonitor* */ monitor, out Size size1, out Size size2);`

	`int GetSizeConstraintsForDpi(int uint1, out Size size1, out Size size2);`

	`int SetSizeConstraintsForDpi(ref int uint1, ref Size size1, ref Size size2);`

	`int OnMinSizePreferencesUpdated(IntPtr hwnd);`

	`int ApplyOperation(ref IntPtr /* IApplicationViewOperation* */ operation);`

	`int IsTray(out bool isTray);`

	`int IsInHighZOrderBand(out bool isInHighZOrderBand);`

	`int IsSplashScreenPresented(out bool isSplashScreenPresented);`

	`int Flash();`

	`int GetRootSwitchableOwner(out IApplicationView rootSwitchableOwner);`

	`int EnumerateOwnershipTree(out IObjectArray ownershipTree);`

	`int GetEnterpriseId([MarshalAs(UnmanagedType.LPWStr)] out string enterpriseId);`

	`int IsMirrored(out bool isMirrored);`

	`//These have been removed in 17134`
	`//int GetPositionPriority(out IntPtr /* IShellPositionerPriority** */ priority);`
	`//int SetPositionPriority(IntPtr /* IShellPositionerPriority* */ priority);`
	`//int QuerySizeConstraintsFromApp();`


	`//new in 17134`

	`int Unknown1(out int unknown);`

	`int Unknown2(out UNKNOWN unknown);`

	`int Unknown3(out int unknown);`

	`int Unknown4(int unknown);`

`}`

Build 17661 IApplicationView & IApplicationViewCollection

    `[ComImport]`
`[Guid("ca55f183-de6b-43ce-912f-36092ee72bd8")]`
`[InterfaceType(ComInterfaceType.InterfaceIsIInspectable)]`
`public interface IApplicationView`
`{`
	`int SetFocus();`

	`int SwitchTo();`

	`int TryInvokeBack(ref IntPtr /* IAsyncCallback* */ callback);`

	`int GetThumbnailWindow(out IntPtr hwnd);`

	`int GetMonitor(out IntPtr /* IImmersiveMonitor */ immersiveMonitor);`

	`int GetVisibility(out int visibility);`

	`int SetCloak(APPLICATION_VIEW_CLOAK_TYPE cloakType, int unknown);`

	`int GetPosition(ref Guid guid /* GUID for IApplicationViewPosition */, out IntPtr /* IApplicationViewPosition** */ position);`

	`int SetPosition(ref IntPtr /* IApplicationViewPosition* */ position);`

	`int InsertAfterWindow(IntPtr hwnd);`

	`int GetExtendedFramePosition(out Rect rect);`

	`int GetAppUserModelId([MarshalAs(UnmanagedType.LPWStr)] out string id);`

	`int SetAppUserModelId(string id);`

	`int IsEqualByAppUserModelId(string id, out int result);`

	`int GetViewState(out int state);`

	`int SetViewState(int state);`

	`int GetNeediness(out int neediness);`

	`int GetLastActivationTimestamp(out long timestamp);`

	`int SetLastActivationTimestamp(long timestamp);`

	`int GetVirtualDesktopId(out Guid guid);`

	`int SetVirtualDesktopId(ref Guid guid);`

	`int GetShowInSwitchers(out int flag);`

	`int SetShowInSwitchers(int flag);`

	`int GetScaleFactor(out int factor);`

	`int CanReceiveInput(out bool canReceiveInput);`

	`int GetCompatibilityPolicyType(out APPLICATION_VIEW_COMPATIBILITY_POLICY flags);`

	`int SetCompatibilityPolicyType(APPLICATION_VIEW_COMPATIBILITY_POLICY flags);`

	`int GetSizeConstraints(IntPtr /* IImmersiveMonitor* */ monitor, out Size size1, out Size size2);`

	`int GetSizeConstraintsForDpi(int uint1, out Size size1, out Size size2);`

	`int SetSizeConstraintsForDpi(ref int uint1, ref Size size1, ref Size size2);`

	`int OnMinSizePreferencesUpdated(IntPtr hwnd);`

	`int ApplyOperation(ref IntPtr /* IApplicationViewOperation* */ operation);`

	`int IsTray(out bool isTray);`

	`int IsInHighZOrderBand(out bool isInHighZOrderBand);`

	`int IsSplashScreenPresented(out bool isSplashScreenPresented);`

	`int Flash();`

	`int GetRootSwitchableOwner(out IApplicationView1803 rootSwitchableOwner);`

	`int EnumerateOwnershipTree(out IObjectArray ownershipTree);`

	`int GetEnterpriseId([MarshalAs(UnmanagedType.LPWStr)] out string enterpriseId);`

	`int IsMirrored(out bool isMirrored);`

	`//These have been removed in 1803`
	`//int GetPositionPriority(out IntPtr /* IShellPositionerPriority** */ priority);`
	`//int SetPositionPriority(IntPtr /* IShellPositionerPriority* */ priority);`
	`//int QuerySizeConstraintsFromApp();		`

	`int Unknown1(out int unknown);`

	`int Unknown2(out int unknown);`

	`int Unknown3(out int unknown);`

	`int Unknown4(int unknown);`

	`//new in 17661`

	`int Unknown5();`

	`int Unknown6(out int unknown);`

	`int Unknown7(int unknown);`

	`int Unknown8(int unknownX, int unknownY);`

`}`


`[ComImport]`
`[Guid("1841c6d7-4f9d-42c0-af41-8747538f10e5")]`
`[InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]`
`public interface IApplicationViewCollection`
`{`
	`int GetViews(out IObjectArray array);`

	`int GetViewsByZOrder(out IObjectArray array);`

	`int GetViewsByAppUserModelId(string id, out IObjectArray array);`

	`int GetViewForHwnd(IntPtr hwnd, out IApplicationView view);`

	`int GetViewForApplication(object application, out IApplicationView view);`

	`int GetViewForAppUserModelId(string id, out IApplicationView view);`

	`int GetViewInFocus(out IntPtr view);`

	`int Unknown1(out IntPtr view);`

	`void outreshCollection();`

	`int RegisterForApplicationViewChanges(object listener, out int cookie);`

	`Removed`
	`//int RegisterForApplicationViewPositionChanges(object listener, out int cookie);`

	`int UnregisterForApplicationViewChanges(int cookie);`
`}`
Clone this wiki locally