|
@@ -192,269 +192,4 @@ public:
|
|
|
#define SES_EX_HANDLEFRIENDLYURL (0x100)
|
|
|
//---------------------------------------------------------------------------
|
|
|
//---------------------------------------------------------------------------
|
|
|
-typedef struct HSTRING__{
|
|
|
- int unused;
|
|
|
-} HSTRING__;
|
|
|
-typedef HSTRING__* HSTRING;
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-// Windows Kits\10\Include\10.0.16299.0\winrt\inspectable.h
|
|
|
-typedef enum TrustLevel {
|
|
|
- BaseTrust = 0,
|
|
|
- PartialTrust,
|
|
|
- FullTrust
|
|
|
-} TrustLevel;
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-class IInspectable : public IUnknown
|
|
|
-{
|
|
|
-public:
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetIids(
|
|
|
- /* [out] */ __RPC__out ULONG *iidCount,
|
|
|
- /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids) = 0;
|
|
|
-
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetRuntimeClassName(
|
|
|
- /* [out] */ __RPC__deref_out_opt HSTRING *className) = 0;
|
|
|
-
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetTrustLevel(
|
|
|
- /* [out] */ __RPC__out TrustLevel *trustLevel) = 0;
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-template <class T>
|
|
|
-struct not_yet_specialized_placeholder
|
|
|
-{
|
|
|
- enum { value = false };
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-template <class WasNotSpecialized>
|
|
|
-struct not_yet_specialized
|
|
|
-{
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-template <class T>
|
|
|
-struct GetAbiType
|
|
|
-{
|
|
|
- typedef T type;
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-template <class T>
|
|
|
-struct GetLogicalType
|
|
|
-{
|
|
|
- typedef T type;
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-#define IAsyncOperationCompletedHandlerStoreAppLicenseGUID L"{ceff1e09-e506-50ad-a908-52038c256552}"
|
|
|
-template <class TResult>
|
|
|
-struct IAsyncOperationCompletedHandler_impl;
|
|
|
-template <class TResult>
|
|
|
- struct IAsyncOperationCompletedHandler
|
|
|
- : public IAsyncOperationCompletedHandler_impl<TResult>
|
|
|
- , not_yet_specialized<IAsyncOperationCompletedHandler<TResult> >
|
|
|
-{
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-template <class TResult>
|
|
|
-struct IAsyncOperation_impl : IInspectable
|
|
|
-{
|
|
|
-private:
|
|
|
- typedef typename GetAbiType<TResult>::type TResult_abi;
|
|
|
- typedef typename GetLogicalType<TResult>::type TResult_logical;
|
|
|
-public:
|
|
|
- // For all types which are neither InterfaceGroups nor RuntimeClasses, the
|
|
|
- // following three typedefs are synonyms for a single C++ type. But for
|
|
|
- // InterfaceGroups and RuntimeClasses, they are different types:
|
|
|
- // T_logical: The C++ Type for the InterfaceGroup or RuntimeClass, when
|
|
|
- // used as a template parameter. Eg "RCFoo*"
|
|
|
- // T_abi: The C++ type for the default interface used to represent the
|
|
|
- // InterfaceGroup or RuntimeClass when passed as a method parameter.
|
|
|
- // Eg "IFoo*"
|
|
|
- // T_complex: An instantiation of the Internal "AggregateType" template that
|
|
|
- // combines T_logical with T_abi. Eg "AggregateType<RCFoo*,IFoo*>"
|
|
|
- // See the declaration above of Windows::Foundation::Internal::AggregateType
|
|
|
- // for more details.
|
|
|
- typedef TResult TResult_complex;
|
|
|
-
|
|
|
- virtual HRESULT STDMETHODCALLTYPE put_Completed( IAsyncOperationCompletedHandler<TResult_logical> *handler) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE get_Completed( IAsyncOperationCompletedHandler<TResult_logical> **handler) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetResults( TResult_abi *results) = 0;
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-// Windows Kits\10\Include\10.0.16299.0\winrt\windows.foundation.collections.h
|
|
|
-template <class TResult>
|
|
|
- struct IAsyncOperation_RT // Conflict with shldisp.h IAsyncOperation
|
|
|
- : IAsyncOperation_impl<TResult>
|
|
|
- , not_yet_specialized<IAsyncOperation_RT<TResult> >
|
|
|
-{
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-enum class AsyncStatus {
|
|
|
- Started = 0,
|
|
|
- Completed,
|
|
|
- Canceled,
|
|
|
- Error,
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-template <class TResult>
|
|
|
-struct IAsyncOperationCompletedHandler_impl : public IUnknown
|
|
|
-{
|
|
|
-private:
|
|
|
- typedef typename GetAbiType<TResult>::type TResult_abi;
|
|
|
- typedef typename GetLogicalType<TResult>::type TResult_logical;
|
|
|
-
|
|
|
-public:
|
|
|
- // For all types which are neither InterfaceGroups nor RuntimeClasses, the
|
|
|
- // following three typedefs are synonyms for a single C++ type. But for
|
|
|
- // InterfaceGroups and RuntimeClasses, they are different types:
|
|
|
- // T_logical: The C++ Type for the InterfaceGroup or RuntimeClass, when
|
|
|
- // used as a template parameter. Eg "RCFoo*"
|
|
|
- // T_abi: The C++ type for the default interface used to represent the
|
|
|
- // InterfaceGroup or RuntimeClass when passed as a method parameter.
|
|
|
- // Eg "IFoo*"
|
|
|
- // T_complex: An instantiation of the Internal "AggregateType" template that
|
|
|
- // combines T_logical with T_abi. Eg "AggregateType<RCFoo*,IFoo*>"
|
|
|
- // See the declaration above of Windows::Foundation::Internal::AggregateType
|
|
|
- // for more details.
|
|
|
- typedef TResult TResult_complex;
|
|
|
-
|
|
|
- virtual HRESULT STDMETHODCALLTYPE Invoke(IAsyncOperation_RT<TResult> *asyncInfo, AsyncStatus status) = 0;
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-#define IStoreContextStaticsGUID L"{9C06EE5F-15C0-4E72-9330-D6191CEBD19C}"
|
|
|
-// Windows Kits\10\Include\10.0.16299.0\winrt\windows.services.store.h
|
|
|
-class IStoreContext : public IInspectable
|
|
|
-{
|
|
|
-public:
|
|
|
- /* [propget] */virtual HRESULT STDMETHODCALLTYPE get_User(
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*ABI::Windows::System::IUser*/IUnknown * * value
|
|
|
- ) = 0;
|
|
|
- /* [eventadd] */virtual HRESULT STDMETHODCALLTYPE add_OfflineLicensesChanged(
|
|
|
- /* [in] */__RPC__in_opt /*__FITypedEventHandler_2_Windows__CServices__CStore__CStoreContext_IInspectable*/IUnknown * handler,
|
|
|
- /* [retval, out] */__RPC__out /*EventRegistrationToken*/__int64 * token
|
|
|
- ) = 0;
|
|
|
- /* [eventremove] */virtual HRESULT STDMETHODCALLTYPE remove_OfflineLicensesChanged(
|
|
|
- /* [in] *//*EventRegistrationToken*/__int64 token
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetCustomerPurchaseIdAsync(
|
|
|
- /* [in] */__RPC__in HSTRING serviceTicket,
|
|
|
- /* [in] */__RPC__in HSTRING publisherUserId,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_HSTRING*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetCustomerCollectionsIdAsync(
|
|
|
- /* [in] */__RPC__in HSTRING serviceTicket,
|
|
|
- /* [in] */__RPC__in HSTRING publisherUserId,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_HSTRING*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetAppLicenseAsync(
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStoreAppLicense*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetStoreProductForCurrentAppAsync(
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStoreProductResult*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetStoreProductsAsync(
|
|
|
- /* [in] */__RPC__in_opt /*__FIIterable_1_HSTRING*/IUnknown * productKinds,
|
|
|
- /* [in] */__RPC__in_opt /*__FIIterable_1_HSTRING*/IUnknown * storeIds,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStoreProductQueryResult*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetAssociatedStoreProductsAsync(
|
|
|
- /* [in] */__RPC__in_opt /*__FIIterable_1_HSTRING*/IUnknown * productKinds,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStoreProductQueryResult*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetAssociatedStoreProductsWithPagingAsync(
|
|
|
- /* [in] */__RPC__in_opt /*__FIIterable_1_HSTRING*/IUnknown * productKinds,
|
|
|
- /* [in] */UINT32 maxItemsToRetrievePerPage,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStoreProductPagedQueryResult*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetUserCollectionAsync(
|
|
|
- /* [in] */__RPC__in_opt /*__FIIterable_1_HSTRING*/IUnknown * productKinds,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStoreProductQueryResult*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetUserCollectionWithPagingAsync(
|
|
|
- /* [in] */__RPC__in_opt /*__FIIterable_1_HSTRING*/IUnknown * productKinds,
|
|
|
- /* [in] */UINT32 maxItemsToRetrievePerPage,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStoreProductPagedQueryResult*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE ReportConsumableFulfillmentAsync(
|
|
|
- /* [in] */__RPC__in HSTRING productStoreId,
|
|
|
- /* [in] */UINT32 quantity,
|
|
|
- /* [in] */GUID trackingId,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStoreConsumableResult*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetConsumableBalanceRemainingAsync(
|
|
|
- /* [in] */__RPC__in HSTRING productStoreId,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStoreConsumableResult*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE AcquireStoreLicenseForOptionalPackageAsync(
|
|
|
- /* [in] */__RPC__in_opt /*ABI::Windows::ApplicationModel::IPackage*/IUnknown * optionalPackage,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStoreAcquireLicenseResult*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- /* [overload] */virtual HRESULT STDMETHODCALLTYPE RequestPurchaseAsync(
|
|
|
- /* [in] */__RPC__in HSTRING storeId,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStorePurchaseResult*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- /* [overload] */virtual HRESULT STDMETHODCALLTYPE RequestPurchaseWithPurchasePropertiesAsync(
|
|
|
- /* [in] */__RPC__in HSTRING storeId,
|
|
|
- /* [in] */__RPC__in_opt /*ABI::Windows::Services::Store::IStorePurchaseProperties*/IUnknown * storePurchaseProperties,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1_Windows__CServices__CStore__CStorePurchaseResult*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetAppAndOptionalStorePackageUpdatesAsync(
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperation_1___FIVectorView_1_Windows__CServices__CStore__CStorePackageUpdate*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE RequestDownloadStorePackageUpdatesAsync(
|
|
|
- /* [in] */__RPC__in_opt /*__FIIterable_1_Windows__CServices__CStore__CStorePackageUpdate*/IUnknown * storePackageUpdates,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperationWithProgress_2_Windows__CServices__CStore__CStorePackageUpdateResult_Windows__CServices__CStore__CStorePackageUpdateStatus*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE RequestDownloadAndInstallStorePackageUpdatesAsync(
|
|
|
- /* [in] */__RPC__in_opt /*__FIIterable_1_Windows__CServices__CStore__CStorePackageUpdate*/IUnknown * storePackageUpdates,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperationWithProgress_2_Windows__CServices__CStore__CStorePackageUpdateResult_Windows__CServices__CStore__CStorePackageUpdateStatus*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE RequestDownloadAndInstallStorePackagesAsync(
|
|
|
- /* [in] */__RPC__in_opt /*__FIIterable_1_HSTRING*/IUnknown * storeIds,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIAsyncOperationWithProgress_2_Windows__CServices__CStore__CStorePackageUpdateResult_Windows__CServices__CStore__CStorePackageUpdateStatus*/IUnknown * * operation
|
|
|
- ) = 0;
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-class IStoreContextStatics : public IInspectable
|
|
|
-{
|
|
|
-public:
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetDefault(
|
|
|
- /* [retval, out] */__RPC__deref_out_opt IStoreContext * * value
|
|
|
- ) = 0;
|
|
|
- virtual HRESULT STDMETHODCALLTYPE GetForUser(
|
|
|
- /* [in] */__RPC__in_opt /*ABI::Windows::System::IUser*/IUnknown * user,
|
|
|
- /* [retval, out] */__RPC__deref_out_opt IStoreContext * * value
|
|
|
- ) = 0;
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-class IStoreAppLicense : public IInspectable
|
|
|
-{
|
|
|
-public:
|
|
|
- /* [propget] */virtual HRESULT STDMETHODCALLTYPE get_SkuStoreId(
|
|
|
- /* [retval, out] */__RPC__deref_out_opt HSTRING * value
|
|
|
- ) = 0;
|
|
|
- /* [propget] */virtual HRESULT STDMETHODCALLTYPE get_IsActive(
|
|
|
- /* [retval, out] */__RPC__out boolean * value
|
|
|
- ) = 0;
|
|
|
- /* [propget] */virtual HRESULT STDMETHODCALLTYPE get_IsTrial(
|
|
|
- /* [retval, out] */__RPC__out boolean * value
|
|
|
- ) = 0;
|
|
|
- /* [propget] */virtual HRESULT STDMETHODCALLTYPE get_ExpirationDate(
|
|
|
- /* [retval, out] */__RPC__out /*ABI::Windows::Foundation::DateTime*/void * value
|
|
|
- ) = 0;
|
|
|
- /* [propget] */virtual HRESULT STDMETHODCALLTYPE get_ExtendedJsonData(
|
|
|
- /* [retval, out] */__RPC__deref_out_opt HSTRING * value
|
|
|
- ) = 0;
|
|
|
- /* [propget] */virtual HRESULT STDMETHODCALLTYPE get_AddOnLicenses(
|
|
|
- /* [retval, out] */__RPC__deref_out_opt /*__FIMapView_2_HSTRING_Windows__CServices__CStore__CStoreLicense*/IUnknown * * value
|
|
|
- ) = 0;
|
|
|
- /* [propget] */virtual HRESULT STDMETHODCALLTYPE get_TrialTimeRemaining(
|
|
|
- /* [retval, out] */__RPC__out /*ABI::Windows::Foundation::TimeSpan*/void * value
|
|
|
- ) = 0;
|
|
|
- /* [propget] */virtual HRESULT STDMETHODCALLTYPE get_IsTrialOwnedByThisUser(
|
|
|
- /* [retval, out] */__RPC__out boolean * value
|
|
|
- ) = 0;
|
|
|
- /* [propget] */virtual HRESULT STDMETHODCALLTYPE get_TrialUniqueId(
|
|
|
- /* [retval, out] */__RPC__deref_out_opt HSTRING * value
|
|
|
- ) = 0;
|
|
|
-};
|
|
|
-//---------------------------------------------------------------------------
|
|
|
-//---------------------------------------------------------------------------
|
|
|
#endif // WinApiH
|