Remove outdated warning
This commit is contained in:
parent
3e3d5a0270
commit
f5745817ec
@ -1,54 +0,0 @@
|
|||||||
client:
|
|
||||||
name: basic
|
|
||||||
file-system: device-agnostic
|
|
||||||
tools: {}
|
|
||||||
targets:
|
|
||||||
"CWinRT-debug.dylib": ["<CWinRT-debug.dylib>"]
|
|
||||||
"CWinRT-debug.module": ["<CWinRT-debug.module>"]
|
|
||||||
"PackageStructure": ["<PackageStructure>"]
|
|
||||||
"main": ["<CWinRT-debug.dylib>","<CWinRT-debug.module>"]
|
|
||||||
"test": ["<CWinRT-debug.dylib>","<CWinRT-debug.module>"]
|
|
||||||
default: "main"
|
|
||||||
nodes:
|
|
||||||
"C:\\dev\\browser\\swift-cwinrt\\Sources\\CWinRT/":
|
|
||||||
is-directory-structure: true
|
|
||||||
content-exclusion-patterns: [".git",".build"]
|
|
||||||
commands:
|
|
||||||
"<CWinRT-debug.dylib>":
|
|
||||||
tool: phony
|
|
||||||
inputs: ["C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.dll"]
|
|
||||||
outputs: ["<CWinRT-debug.dylib>"]
|
|
||||||
|
|
||||||
"<CWinRT-debug.module>":
|
|
||||||
tool: phony
|
|
||||||
inputs: ["C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.build\\shim.c.o"]
|
|
||||||
outputs: ["<CWinRT-debug.module>"]
|
|
||||||
|
|
||||||
"C.CWinRT-debug.dylib":
|
|
||||||
tool: shell
|
|
||||||
inputs: ["C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.build\\shim.c.o","C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.product\\Objects.LinkFileList"]
|
|
||||||
outputs: ["C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.dll"]
|
|
||||||
description: "Linking C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.dll"
|
|
||||||
args: ["C:\\Users\\skirb\\AppData\\Local\\Programs\\Swift\\Toolchains\\0.0.0+Asserts\\usr\\bin\\swiftc.exe","-L","C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug","-o","C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.dll","-module-name","CWinRT","-emit-library","@C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.product\\Objects.LinkFileList","-runtime-compatibility-version","none","-target","x86_64-unknown-windows-msvc","-nostartfiles","-sdk","C:\\Users\\skirb\\AppData\\Local\\Programs\\Swift\\Platforms\\0.0.0\\Windows.platform\\Developer\\SDKs\\Windows.sdk","-libc","MD","-I","C:\\Users\\skirb\\AppData\\Local\\Programs\\Swift\\Platforms\\0.0.0\\Windows.platform\\Developer\\Library\\XCTest-development\\usr\\lib\\swift\\windows","-I","C:\\Users\\skirb\\AppData\\Local\\Programs\\Swift\\Platforms\\0.0.0\\Windows.platform\\Developer\\Library\\XCTest-development\\usr\\lib\\swift\\windows\\x86_64","-L","C:\\Users\\skirb\\AppData\\Local\\Programs\\Swift\\Platforms\\0.0.0\\Windows.platform\\Developer\\Library\\XCTest-development\\usr\\lib\\swift\\windows\\x86_64","-use-ld=lld","-g","-use-ld=lld","-Xlinker","-debug:dwarf","-Xlinker","-debug:dwarf"]
|
|
||||||
|
|
||||||
"C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.build\\shim.c.o":
|
|
||||||
tool: clang
|
|
||||||
inputs: ["C:\\dev\\browser\\swift-cwinrt\\Sources\\CWinRT\\shim.c"]
|
|
||||||
outputs: ["C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.build\\shim.c.o"]
|
|
||||||
description: "Compiling CWinRT shim.c"
|
|
||||||
args: ["C:\\Users\\skirb\\AppData\\Local\\Programs\\Swift\\Toolchains\\0.0.0+Asserts\\usr\\bin\\clang.exe","-target","x86_64-unknown-windows-msvc","-O0","-DSWIFT_PACKAGE=1","-DDEBUG=1","-fblocks","-I","C:\\dev\\browser\\swift-cwinrt\\Sources\\CWinRT\\include","-D_MT","-D_DLL","-Xclang","--dependent-lib=msvcrt","-gdwarf","-MD","-MT","dependencies","-MF","C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.build\\shim.c.d","-c","C:\\dev\\browser\\swift-cwinrt\\Sources\\CWinRT\\shim.c","-o","C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.build\\shim.c.o"]
|
|
||||||
deps: "C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.build\\shim.c.d"
|
|
||||||
|
|
||||||
"C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.product\\Objects.LinkFileList":
|
|
||||||
tool: write-auxiliary-file
|
|
||||||
inputs: ["<link-file-list>","C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.build\\shim.c.o"]
|
|
||||||
outputs: ["C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.product\\Objects.LinkFileList"]
|
|
||||||
description: "Write auxiliary file C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.product\\Objects.LinkFileList"
|
|
||||||
|
|
||||||
"PackageStructure":
|
|
||||||
tool: package-structure-tool
|
|
||||||
inputs: ["C:\\dev\\browser\\swift-cwinrt\\Sources\\CWinRT/","C:\\dev\\browser\\swift-cwinrt\\Package.swift","C:\\dev\\browser\\swift-cwinrt\\Package.resolved"]
|
|
||||||
outputs: ["<PackageStructure>"]
|
|
||||||
description: "Planning build"
|
|
||||||
allow-missing-inputs: true
|
|
||||||
|
|
||||||
@ -1,11 +0,0 @@
|
|||||||
{
|
|
||||||
"object" : {
|
|
||||||
"artifacts" : [
|
|
||||||
|
|
||||||
],
|
|
||||||
"dependencies" : [
|
|
||||||
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"version" : 6
|
|
||||||
}
|
|
||||||
Binary file not shown.
@ -1,55 +0,0 @@
|
|||||||
{
|
|
||||||
"builtTestProducts" : [
|
|
||||||
|
|
||||||
],
|
|
||||||
"copyCommands" : {
|
|
||||||
|
|
||||||
},
|
|
||||||
"explicitTargetDependencyImportCheckingMode" : {
|
|
||||||
"none" : {
|
|
||||||
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"generatedSourceTargetSet" : [
|
|
||||||
|
|
||||||
],
|
|
||||||
"pluginDescriptions" : [
|
|
||||||
|
|
||||||
],
|
|
||||||
"swiftCommands" : {
|
|
||||||
|
|
||||||
},
|
|
||||||
"swiftFrontendCommands" : {
|
|
||||||
|
|
||||||
},
|
|
||||||
"swiftTargetScanArgs" : {
|
|
||||||
|
|
||||||
},
|
|
||||||
"targetDependencyMap" : {
|
|
||||||
"CWinRT" : [
|
|
||||||
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"testDiscoveryCommands" : {
|
|
||||||
|
|
||||||
},
|
|
||||||
"testEntryPointCommands" : {
|
|
||||||
|
|
||||||
},
|
|
||||||
"writeCommands" : {
|
|
||||||
"C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.product\\Objects.LinkFileList" : {
|
|
||||||
"alwaysOutOfDate" : false,
|
|
||||||
"inputs" : [
|
|
||||||
{
|
|
||||||
"kind" : "virtual",
|
|
||||||
"name" : "<link-file-list>"
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"kind" : "file",
|
|
||||||
"name" : "C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.build\\shim.c.o"
|
|
||||||
}
|
|
||||||
],
|
|
||||||
"outputFilePath" : "C:\\dev\\browser\\swift-cwinrt\\.build\\x86_64-unknown-windows-msvc\\debug\\CWinRT.product\\Objects.LinkFileList"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
3
.gitignore
vendored
3
.gitignore
vendored
@ -55,3 +55,6 @@ dkms.conf
|
|||||||
.generated
|
.generated
|
||||||
swift-winrt.rsp
|
swift-winrt.rsp
|
||||||
Package.resolved
|
Package.resolved
|
||||||
|
|
||||||
|
# Swift
|
||||||
|
/.build
|
||||||
@ -1,7 +1,6 @@
|
|||||||
# swift-cwinrt
|
# swift-cwinrt
|
||||||
|
|
||||||
> [!WARNING]
|
This is based on [thebrowsercompany/swift-cwinrt](https://github.com/thebrowsercompany/swift-cwinrt).
|
||||||
> This project contains an outdated snapshot of a subset of WinRT projections generated with [swift-winrt](https://github.com/thebrowsercompany/swift-winrt), provided for illustration purposes. To use WinRT APIs in your Swift project, we recommend using [swift-winrt](https://github.com/thebrowsercompany/swift-winrt) directly to generate your own projections.
|
|
||||||
|
|
||||||
C API definition used by Swift Language bindings.
|
C API definition used by Swift Language bindings.
|
||||||
|
|
||||||
|
|||||||
@ -1,237 +1,237 @@
|
|||||||
// Works around limitations of Swift's C++ Interop when exposing the Windows.h GUID type to Swift.
|
// Works around limitations of Swift's C++ Interop when exposing the Windows.h GUID type to Swift.
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
typedef struct GUID_Workaround {
|
typedef struct GUID_Workaround {
|
||||||
unsigned long Data1;
|
unsigned long Data1;
|
||||||
unsigned short Data2;
|
unsigned short Data2;
|
||||||
unsigned short Data3;
|
unsigned short Data3;
|
||||||
unsigned char Data4[8];
|
unsigned char Data4[8];
|
||||||
} GUID_Workaround;
|
} GUID_Workaround;
|
||||||
|
|
||||||
typedef GUID_Workaround CLSID_Workaround;
|
typedef GUID_Workaround CLSID_Workaround;
|
||||||
typedef GUID_Workaround IID_Workaround;
|
typedef GUID_Workaround IID_Workaround;
|
||||||
typedef GUID_Workaround UUID_Workaround;
|
typedef GUID_Workaround UUID_Workaround;
|
||||||
|
|
||||||
// Functions depending on workaround types
|
// Functions depending on workaround types
|
||||||
typedef struct IUnknown_Workaround IUnknown_Workaround;
|
typedef struct IUnknown_Workaround IUnknown_Workaround;
|
||||||
typedef struct IInspectable_Workaround IInspectable_Workaround;
|
typedef struct IInspectable_Workaround IInspectable_Workaround;
|
||||||
typedef struct IMarshal_Workaround IMarshal_Workaround;
|
typedef struct IMarshal_Workaround IMarshal_Workaround;
|
||||||
|
|
||||||
#include <combaseapi.h>
|
#include <combaseapi.h>
|
||||||
inline HRESULT CoCreateInstance_Workaround(
|
inline HRESULT CoCreateInstance_Workaround(
|
||||||
const CLSID_Workaround* rclsid,
|
const CLSID_Workaround* rclsid,
|
||||||
LPUNKNOWN pUnkOuter,
|
LPUNKNOWN pUnkOuter,
|
||||||
DWORD dwClsContext,
|
DWORD dwClsContext,
|
||||||
const IID_Workaround* riid,
|
const IID_Workaround* riid,
|
||||||
LPVOID* ppv) {
|
LPVOID* ppv) {
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
return CoCreateInstance(*(CLSID*)rclsid, pUnkOuter, dwClsContext, *(IID*)riid, ppv);
|
return CoCreateInstance(*(CLSID*)rclsid, pUnkOuter, dwClsContext, *(IID*)riid, ppv);
|
||||||
#else
|
#else
|
||||||
return CoCreateInstance((REFCLSID)rclsid, pUnkOuter, dwClsContext, (REFIID)riid, ppv);
|
return CoCreateInstance((REFCLSID)rclsid, pUnkOuter, dwClsContext, (REFIID)riid, ppv);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
inline HRESULT CoCreateFreeThreadedMarshaler_Workaround(IUnknown_Workaround* pUnkOuter, IUnknown_Workaround** ppunkMarshal) {
|
inline HRESULT CoCreateFreeThreadedMarshaler_Workaround(IUnknown_Workaround* pUnkOuter, IUnknown_Workaround** ppunkMarshal) {
|
||||||
return CoCreateFreeThreadedMarshaler((IUnknown*)pUnkOuter, (IUnknown**)ppunkMarshal);
|
return CoCreateFreeThreadedMarshaler((IUnknown*)pUnkOuter, (IUnknown**)ppunkMarshal);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline int StringFromGUID2_Workaround(const GUID_Workaround* rguid, LPOLESTR lpsz, int cchMax) {
|
inline int StringFromGUID2_Workaround(const GUID_Workaround* rguid, LPOLESTR lpsz, int cchMax) {
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
return StringFromGUID2(*(GUID*)rguid, lpsz, cchMax);
|
return StringFromGUID2(*(GUID*)rguid, lpsz, cchMax);
|
||||||
#else
|
#else
|
||||||
return StringFromGUID2((REFGUID)rguid, lpsz, cchMax);
|
return StringFromGUID2((REFGUID)rguid, lpsz, cchMax);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <rpc.h>
|
#include <rpc.h>
|
||||||
inline RPC_STATUS UuidFromStringA_Workaround(RPC_CSTR StringUuid, UUID_Workaround* Uuid) {
|
inline RPC_STATUS UuidFromStringA_Workaround(RPC_CSTR StringUuid, UUID_Workaround* Uuid) {
|
||||||
return UuidFromStringA(StringUuid, (UUID*)Uuid);
|
return UuidFromStringA(StringUuid, (UUID*)Uuid);
|
||||||
}
|
}
|
||||||
|
|
||||||
#include <roapi.h>
|
#include <roapi.h>
|
||||||
inline HRESULT RoActivateInstance_Workaround(
|
inline HRESULT RoActivateInstance_Workaround(
|
||||||
HSTRING activatableClassId,
|
HSTRING activatableClassId,
|
||||||
IInspectable_Workaround** instance) {
|
IInspectable_Workaround** instance) {
|
||||||
return RoActivateInstance(activatableClassId, (IInspectable**)instance);
|
return RoActivateInstance(activatableClassId, (IInspectable**)instance);
|
||||||
}
|
}
|
||||||
|
|
||||||
inline HRESULT RoGetActivationFactory_Workaround(
|
inline HRESULT RoGetActivationFactory_Workaround(
|
||||||
HSTRING activatableClassId,
|
HSTRING activatableClassId,
|
||||||
const IID_Workaround* iid,
|
const IID_Workaround* iid,
|
||||||
void** factory) {
|
void** factory) {
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
return RoGetActivationFactory(activatableClassId, *(IID*)iid, factory);
|
return RoGetActivationFactory(activatableClassId, *(IID*)iid, factory);
|
||||||
#else
|
#else
|
||||||
return RoGetActivationFactory(activatableClassId, (REFIID)iid, factory);
|
return RoGetActivationFactory(activatableClassId, (REFIID)iid, factory);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
//-------------------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------------------
|
||||||
// Begin the great lie
|
// Begin the great lie
|
||||||
// Everything below will unknowingly use Xxx_Workaround.
|
// Everything below will unknowingly use Xxx_Workaround.
|
||||||
// For example, uses of GUID will be redirected to GUID_Workaround.
|
// For example, uses of GUID will be redirected to GUID_Workaround.
|
||||||
//-------------------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------------------
|
||||||
// Preemptively include headers before swapping out the IID type
|
// Preemptively include headers before swapping out the IID type
|
||||||
// This no-op the #includes in generated code, so that it instead relies of our workaround types
|
// This no-op the #includes in generated code, so that it instead relies of our workaround types
|
||||||
#include <EventToken.h>
|
#include <EventToken.h>
|
||||||
#include <inspectable.h>
|
#include <inspectable.h>
|
||||||
#include <windowscontracts.h>
|
#include <windowscontracts.h>
|
||||||
|
|
||||||
#define GUID GUID_Workaround
|
#define GUID GUID_Workaround
|
||||||
#undef REFGUID // REFGUID is a #define, not a typedef
|
#undef REFGUID // REFGUID is a #define, not a typedef
|
||||||
#define REFGUID const GUID* __MIDL_CONST
|
#define REFGUID const GUID* __MIDL_CONST
|
||||||
#define IID IID_Workaround
|
#define IID IID_Workaround
|
||||||
#undef REFIID // REFIID is a #define, not a typedef
|
#undef REFIID // REFIID is a #define, not a typedef
|
||||||
#define REFIID const IID* __MIDL_CONST
|
#define REFIID const IID* __MIDL_CONST
|
||||||
#define CLSID GUID
|
#define CLSID GUID
|
||||||
|
|
||||||
#define IUnknown IUnknown_Workaround
|
#define IUnknown IUnknown_Workaround
|
||||||
#define IUnknownVtbl IUnknownVtbl_Workaround
|
#define IUnknownVtbl IUnknownVtbl_Workaround
|
||||||
#define IInspectable IInspectable_Workaround
|
#define IInspectable IInspectable_Workaround
|
||||||
#define IInspectableVtbl IInspectableVtbl_Workaround
|
#define IInspectableVtbl IInspectableVtbl_Workaround
|
||||||
#define IMarshal IMarshal_Workaround
|
#define IMarshal IMarshal_Workaround
|
||||||
#define IMarshalVtbl IMarshalVtbl_Workaround
|
#define IMarshalVtbl IMarshalVtbl_Workaround
|
||||||
|
|
||||||
// iunknown.h
|
// iunknown.h
|
||||||
typedef struct IUnknownVtbl
|
typedef struct IUnknownVtbl
|
||||||
{
|
{
|
||||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||||
__RPC__in IUnknown * This,
|
__RPC__in IUnknown * This,
|
||||||
/* [in] */ __RPC__in REFIID riid,
|
/* [in] */ __RPC__in REFIID riid,
|
||||||
/* [annotation][iid_is][out] */
|
/* [annotation][iid_is][out] */
|
||||||
_COM_Outptr_ void **ppvObject);
|
_COM_Outptr_ void **ppvObject);
|
||||||
|
|
||||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||||
__RPC__in IUnknown * This);
|
__RPC__in IUnknown * This);
|
||||||
|
|
||||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||||
__RPC__in IUnknown * This);
|
__RPC__in IUnknown * This);
|
||||||
} IUnknownVtbl;
|
} IUnknownVtbl;
|
||||||
|
|
||||||
interface IUnknown
|
interface IUnknown
|
||||||
{
|
{
|
||||||
CONST_VTBL struct IUnknownVtbl *lpVtbl;
|
CONST_VTBL struct IUnknownVtbl *lpVtbl;
|
||||||
};
|
};
|
||||||
|
|
||||||
// IInspectable.h
|
// IInspectable.h
|
||||||
typedef struct IInspectableVtbl
|
typedef struct IInspectableVtbl
|
||||||
{
|
{
|
||||||
BEGIN_INTERFACE
|
BEGIN_INTERFACE
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||||
__RPC__in IInspectable * This,
|
__RPC__in IInspectable * This,
|
||||||
/* [in] */ __RPC__in REFIID riid,
|
/* [in] */ __RPC__in REFIID riid,
|
||||||
/* [annotation][iid_is][out] */
|
/* [annotation][iid_is][out] */
|
||||||
_COM_Outptr_ void **ppvObject);
|
_COM_Outptr_ void **ppvObject);
|
||||||
|
|
||||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||||
__RPC__in IInspectable * This);
|
__RPC__in IInspectable * This);
|
||||||
|
|
||||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||||
__RPC__in IInspectable * This);
|
__RPC__in IInspectable * This);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *GetIids )(
|
HRESULT ( STDMETHODCALLTYPE *GetIids )(
|
||||||
__RPC__in IInspectable * This,
|
__RPC__in IInspectable * This,
|
||||||
/* [out] */ __RPC__out ULONG *iidCount,
|
/* [out] */ __RPC__out ULONG *iidCount,
|
||||||
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )(
|
HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )(
|
||||||
__RPC__in IInspectable * This,
|
__RPC__in IInspectable * This,
|
||||||
/* [out] */ __RPC__deref_out_opt HSTRING *className);
|
/* [out] */ __RPC__deref_out_opt HSTRING *className);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )(
|
HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )(
|
||||||
__RPC__in IInspectable * This,
|
__RPC__in IInspectable * This,
|
||||||
/* [out] */ __RPC__out TrustLevel *trustLevel);
|
/* [out] */ __RPC__out TrustLevel *trustLevel);
|
||||||
|
|
||||||
END_INTERFACE
|
END_INTERFACE
|
||||||
} IInspectableVtbl;
|
} IInspectableVtbl;
|
||||||
|
|
||||||
interface IInspectable
|
interface IInspectable
|
||||||
{
|
{
|
||||||
CONST_VTBL struct IInspectableVtbl *lpVtbl;
|
CONST_VTBL struct IInspectableVtbl *lpVtbl;
|
||||||
};
|
};
|
||||||
|
|
||||||
typedef struct IMarshalVtbl
|
typedef struct IMarshalVtbl
|
||||||
{
|
{
|
||||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||||
IMarshal * This,
|
IMarshal * This,
|
||||||
/* [in] */ REFIID riid,
|
/* [in] */ REFIID riid,
|
||||||
/* [annotation][iid_is][out] */
|
/* [annotation][iid_is][out] */
|
||||||
_COM_Outptr_ void **ppvObject);
|
_COM_Outptr_ void **ppvObject);
|
||||||
|
|
||||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||||
IMarshal * This);
|
IMarshal * This);
|
||||||
|
|
||||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||||
IMarshal * This);
|
IMarshal * This);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *GetUnmarshalClass )(
|
HRESULT ( STDMETHODCALLTYPE *GetUnmarshalClass )(
|
||||||
IMarshal * This,
|
IMarshal * This,
|
||||||
/* [annotation][in] */
|
/* [annotation][in] */
|
||||||
_In_ REFIID riid,
|
_In_ REFIID riid,
|
||||||
/* [annotation][unique][in] */
|
/* [annotation][unique][in] */
|
||||||
_In_opt_ void *pv,
|
_In_opt_ void *pv,
|
||||||
/* [annotation][in] */
|
/* [annotation][in] */
|
||||||
_In_ DWORD dwDestContext,
|
_In_ DWORD dwDestContext,
|
||||||
/* [annotation][unique][in] */
|
/* [annotation][unique][in] */
|
||||||
_Reserved_ void *pvDestContext,
|
_Reserved_ void *pvDestContext,
|
||||||
/* [annotation][in] */
|
/* [annotation][in] */
|
||||||
_In_ DWORD mshlflags,
|
_In_ DWORD mshlflags,
|
||||||
/* [annotation][out] */
|
/* [annotation][out] */
|
||||||
_Out_ CLSID *pCid);
|
_Out_ CLSID *pCid);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *GetMarshalSizeMax )(
|
HRESULT ( STDMETHODCALLTYPE *GetMarshalSizeMax )(
|
||||||
IMarshal * This,
|
IMarshal * This,
|
||||||
/* [annotation][in] */
|
/* [annotation][in] */
|
||||||
_In_ REFIID riid,
|
_In_ REFIID riid,
|
||||||
/* [annotation][unique][in] */
|
/* [annotation][unique][in] */
|
||||||
_In_opt_ void *pv,
|
_In_opt_ void *pv,
|
||||||
/* [annotation][in] */
|
/* [annotation][in] */
|
||||||
_In_ DWORD dwDestContext,
|
_In_ DWORD dwDestContext,
|
||||||
/* [annotation][unique][in] */
|
/* [annotation][unique][in] */
|
||||||
_Reserved_ void *pvDestContext,
|
_Reserved_ void *pvDestContext,
|
||||||
/* [annotation][in] */
|
/* [annotation][in] */
|
||||||
_In_ DWORD mshlflags,
|
_In_ DWORD mshlflags,
|
||||||
/* [annotation][out] */
|
/* [annotation][out] */
|
||||||
_Out_ DWORD *pSize);
|
_Out_ DWORD *pSize);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *MarshalInterface )(
|
HRESULT ( STDMETHODCALLTYPE *MarshalInterface )(
|
||||||
IMarshal * This,
|
IMarshal * This,
|
||||||
/* [annotation][unique][in] */
|
/* [annotation][unique][in] */
|
||||||
_In_ IStream *pStm,
|
_In_ IStream *pStm,
|
||||||
/* [annotation][in] */
|
/* [annotation][in] */
|
||||||
_In_ REFIID riid,
|
_In_ REFIID riid,
|
||||||
/* [annotation][unique][in] */
|
/* [annotation][unique][in] */
|
||||||
_In_opt_ void *pv,
|
_In_opt_ void *pv,
|
||||||
/* [annotation][in] */
|
/* [annotation][in] */
|
||||||
_In_ DWORD dwDestContext,
|
_In_ DWORD dwDestContext,
|
||||||
/* [annotation][unique][in] */
|
/* [annotation][unique][in] */
|
||||||
_Reserved_ void *pvDestContext,
|
_Reserved_ void *pvDestContext,
|
||||||
/* [annotation][in] */
|
/* [annotation][in] */
|
||||||
_In_ DWORD mshlflags);
|
_In_ DWORD mshlflags);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *UnmarshalInterface )(
|
HRESULT ( STDMETHODCALLTYPE *UnmarshalInterface )(
|
||||||
IMarshal * This,
|
IMarshal * This,
|
||||||
/* [annotation][unique][in] */
|
/* [annotation][unique][in] */
|
||||||
_In_ IStream *pStm,
|
_In_ IStream *pStm,
|
||||||
/* [annotation][in] */
|
/* [annotation][in] */
|
||||||
_In_ REFIID riid,
|
_In_ REFIID riid,
|
||||||
/* [annotation][out] */
|
/* [annotation][out] */
|
||||||
_Outptr_ void **ppv);
|
_Outptr_ void **ppv);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *ReleaseMarshalData )(
|
HRESULT ( STDMETHODCALLTYPE *ReleaseMarshalData )(
|
||||||
IMarshal * This,
|
IMarshal * This,
|
||||||
/* [annotation][unique][in] */
|
/* [annotation][unique][in] */
|
||||||
_In_ IStream *pStm);
|
_In_ IStream *pStm);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *DisconnectObject )(
|
HRESULT ( STDMETHODCALLTYPE *DisconnectObject )(
|
||||||
IMarshal * This,
|
IMarshal * This,
|
||||||
/* [annotation][in] */
|
/* [annotation][in] */
|
||||||
_In_ DWORD dwReserved);
|
_In_ DWORD dwReserved);
|
||||||
|
|
||||||
} IMarshalVtbl;
|
} IMarshalVtbl;
|
||||||
|
|
||||||
interface IMarshal
|
interface IMarshal
|
||||||
{
|
{
|
||||||
CONST_VTBL struct IMarshalVtbl *lpVtbl;
|
CONST_VTBL struct IMarshalVtbl *lpVtbl;
|
||||||
};
|
};
|
||||||
@ -1,74 +1,74 @@
|
|||||||
// The real ivectorchangedeventargs.h will provide different definitions in C vs C++ compilation mode.
|
// The real ivectorchangedeventargs.h will provide different definitions in C vs C++ compilation mode.
|
||||||
// Override it with ours so we ensure we get the C definitions.
|
// Override it with ours so we ensure we get the C definitions.
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <inspectable.h>
|
#include <inspectable.h>
|
||||||
|
|
||||||
#if !defined(____x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs_INTERFACE_DEFINED__)
|
#if !defined(____x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs_INTERFACE_DEFINED__)
|
||||||
#define ____x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs_INTERFACE_DEFINED__
|
#define ____x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs_INTERFACE_DEFINED__
|
||||||
typedef interface __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs;
|
typedef interface __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs;
|
||||||
|
|
||||||
typedef /* [v1_enum] */
|
typedef /* [v1_enum] */
|
||||||
enum __x_ABI_CWindows_CFoundation_CCollections_CCollectionChange
|
enum __x_ABI_CWindows_CFoundation_CCollections_CCollectionChange
|
||||||
{
|
{
|
||||||
CollectionChange_Reset,
|
CollectionChange_Reset,
|
||||||
CollectionChange_ItemInserted,
|
CollectionChange_ItemInserted,
|
||||||
CollectionChange_ItemRemoved,
|
CollectionChange_ItemRemoved,
|
||||||
CollectionChange_ItemChanged,
|
CollectionChange_ItemChanged,
|
||||||
} __x_ABI_CWindows_CFoundation_CCollections_CCollectionChange;
|
} __x_ABI_CWindows_CFoundation_CCollections_CCollectionChange;
|
||||||
|
|
||||||
/* [contract, version, pointer_default(unique), uuid("575933df-34fe-4480-af15-07691f3d5d9b"), object] */
|
/* [contract, version, pointer_default(unique), uuid("575933df-34fe-4480-af15-07691f3d5d9b"), object] */
|
||||||
typedef struct __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgsVtbl
|
typedef struct __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgsVtbl
|
||||||
{
|
{
|
||||||
BEGIN_INTERFACE
|
BEGIN_INTERFACE
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface)(
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface)(
|
||||||
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
||||||
/* [in] */ __RPC__in REFIID riid,
|
/* [in] */ __RPC__in REFIID riid,
|
||||||
/* [annotation][iid_is][out] */
|
/* [annotation][iid_is][out] */
|
||||||
_COM_Outptr_ void **ppvObject
|
_COM_Outptr_ void **ppvObject
|
||||||
);
|
);
|
||||||
|
|
||||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||||
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This
|
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This
|
||||||
);
|
);
|
||||||
|
|
||||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||||
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This
|
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This
|
||||||
);
|
);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *GetIids )(
|
HRESULT ( STDMETHODCALLTYPE *GetIids )(
|
||||||
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
||||||
/* [out] */ __RPC__out ULONG *iidCount,
|
/* [out] */ __RPC__out ULONG *iidCount,
|
||||||
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids
|
/* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids
|
||||||
);
|
);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )(
|
HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )(
|
||||||
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
||||||
/* [out] */ __RPC__deref_out_opt HSTRING *className
|
/* [out] */ __RPC__deref_out_opt HSTRING *className
|
||||||
);
|
);
|
||||||
|
|
||||||
HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )(
|
HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )(
|
||||||
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
__RPC__in __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
||||||
/* [OUT ] */ __RPC__out TrustLevel *trustLevel
|
/* [OUT ] */ __RPC__out TrustLevel *trustLevel
|
||||||
);
|
);
|
||||||
|
|
||||||
/* [propget] */HRESULT ( STDMETHODCALLTYPE *get_CollectionChange )(
|
/* [propget] */HRESULT ( STDMETHODCALLTYPE *get_CollectionChange )(
|
||||||
__x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
__x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
||||||
/* [retval, out] */__RPC__out __x_ABI_CWindows_CFoundation_CCollections_CCollectionChange * value
|
/* [retval, out] */__RPC__out __x_ABI_CWindows_CFoundation_CCollections_CCollectionChange * value
|
||||||
);
|
);
|
||||||
|
|
||||||
/* [propget] */HRESULT ( STDMETHODCALLTYPE *get_Index )(
|
/* [propget] */HRESULT ( STDMETHODCALLTYPE *get_Index )(
|
||||||
__x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
__x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs * This,
|
||||||
/* [retval, out] */__RPC__out unsigned int * value
|
/* [retval, out] */__RPC__out unsigned int * value
|
||||||
);
|
);
|
||||||
|
|
||||||
END_INTERFACE
|
END_INTERFACE
|
||||||
} __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgsVtbl;
|
} __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgsVtbl;
|
||||||
|
|
||||||
interface __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs
|
interface __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgs
|
||||||
{
|
{
|
||||||
CONST_VTBL struct __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgsVtbl *lpVtbl;
|
CONST_VTBL struct __x_ABI_CWindows_CFoundation_CCollections_CIVectorChangedEventArgsVtbl *lpVtbl;
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
@ -1,30 +1,30 @@
|
|||||||
// The real MemoryBuffer.h doesn't provide C definitions, so we need to provide those here
|
// The real MemoryBuffer.h doesn't provide C definitions, so we need to provide those here
|
||||||
// No pragma once, we might include this twice (once for the regular definitions, once for the workaround)
|
// No pragma once, we might include this twice (once for the regular definitions, once for the workaround)
|
||||||
|
|
||||||
#include <objidl.h>
|
#include <objidl.h>
|
||||||
|
|
||||||
#ifndef _IMEMORYBUFFERBYTEACCESS_DEFINED
|
#ifndef _IMEMORYBUFFERBYTEACCESS_DEFINED
|
||||||
#define _IMEMORYBUFFERBYTEACCESS_DEFINED
|
#define _IMEMORYBUFFERBYTEACCESS_DEFINED
|
||||||
typedef interface IMemoryBufferByteAccess IMemoryBufferByteAccess;
|
typedef interface IMemoryBufferByteAccess IMemoryBufferByteAccess;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
typedef struct IMemoryBufferByteAccessVtbl
|
typedef struct IMemoryBufferByteAccessVtbl
|
||||||
{
|
{
|
||||||
BEGIN_INTERFACE
|
BEGIN_INTERFACE
|
||||||
|
|
||||||
HRESULT (STDMETHODCALLTYPE* QueryInterface)(__RPC__in IMemoryBufferByteAccess* This,
|
HRESULT (STDMETHODCALLTYPE* QueryInterface)(__RPC__in IMemoryBufferByteAccess* This,
|
||||||
REFIID riid,
|
REFIID riid,
|
||||||
_COM_Outptr_ void** ppvObject);
|
_COM_Outptr_ void** ppvObject);
|
||||||
ULONG (STDMETHODCALLTYPE* AddRef)(__RPC__in IMemoryBufferByteAccess* This);
|
ULONG (STDMETHODCALLTYPE* AddRef)(__RPC__in IMemoryBufferByteAccess* This);
|
||||||
ULONG (STDMETHODCALLTYPE* Release)(__RPC__in IMemoryBufferByteAccess* This);
|
ULONG (STDMETHODCALLTYPE* Release)(__RPC__in IMemoryBufferByteAccess* This);
|
||||||
HRESULT (STDMETHODCALLTYPE* GetBuffer)(__RPC__in IMemoryBufferByteAccess* This,
|
HRESULT (STDMETHODCALLTYPE* GetBuffer)(__RPC__in IMemoryBufferByteAccess* This,
|
||||||
BYTE** value,
|
BYTE** value,
|
||||||
_Out_ UINT32* capacity);
|
_Out_ UINT32* capacity);
|
||||||
|
|
||||||
END_INTERFACE
|
END_INTERFACE
|
||||||
} IMemoryBufferByteAccessVtbl;
|
} IMemoryBufferByteAccessVtbl;
|
||||||
|
|
||||||
interface IMemoryBufferByteAccess
|
interface IMemoryBufferByteAccess
|
||||||
{
|
{
|
||||||
CONST_VTBL struct IMemoryBufferByteAccessVtbl* lpVtbl;
|
CONST_VTBL struct IMemoryBufferByteAccessVtbl* lpVtbl;
|
||||||
};
|
};
|
||||||
@ -1,57 +1,57 @@
|
|||||||
// The real restrictederrorinfo.h will provide different definitions in C vs C++ compilation mode.
|
// The real restrictederrorinfo.h will provide different definitions in C vs C++ compilation mode.
|
||||||
// Override it with ours so we ensure we get the C definitions.
|
// Override it with ours so we ensure we get the C definitions.
|
||||||
|
|
||||||
// No pragma once, we might include this twice (once for the regular definitions, once for the workaround)
|
// No pragma once, we might include this twice (once for the regular definitions, once for the workaround)
|
||||||
|
|
||||||
#include <combaseapi.h>
|
#include <combaseapi.h>
|
||||||
|
|
||||||
#ifndef __IRestrictedErrorInfo_FWD_DEFINED__
|
#ifndef __IRestrictedErrorInfo_FWD_DEFINED__
|
||||||
#define __IRestrictedErrorInfo_FWD_DEFINED__
|
#define __IRestrictedErrorInfo_FWD_DEFINED__
|
||||||
typedef interface IRestrictedErrorInfo IRestrictedErrorInfo;
|
typedef interface IRestrictedErrorInfo IRestrictedErrorInfo;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef __IRestrictedErrorInfo_INTERFACE_DEFINED__
|
#ifndef __IRestrictedErrorInfo_INTERFACE_DEFINED__
|
||||||
#define __IRestrictedErrorInfo_INTERFACE_DEFINED__
|
#define __IRestrictedErrorInfo_INTERFACE_DEFINED__
|
||||||
EXTERN_C const IID IID_IRestrictedErrorInfo;
|
EXTERN_C const IID IID_IRestrictedErrorInfo;
|
||||||
|
|
||||||
typedef struct IRestrictedErrorInfoVtbl
|
typedef struct IRestrictedErrorInfoVtbl
|
||||||
{
|
{
|
||||||
BEGIN_INTERFACE
|
BEGIN_INTERFACE
|
||||||
|
|
||||||
DECLSPEC_XFGVIRT(IUnknown, QueryInterface)
|
DECLSPEC_XFGVIRT(IUnknown, QueryInterface)
|
||||||
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
||||||
__RPC__in IRestrictedErrorInfo * This,
|
__RPC__in IRestrictedErrorInfo * This,
|
||||||
/* [in] */ __RPC__in REFIID riid,
|
/* [in] */ __RPC__in REFIID riid,
|
||||||
/* [annotation][iid_is][out] */
|
/* [annotation][iid_is][out] */
|
||||||
_COM_Outptr_ void **ppvObject);
|
_COM_Outptr_ void **ppvObject);
|
||||||
|
|
||||||
DECLSPEC_XFGVIRT(IUnknown, AddRef)
|
DECLSPEC_XFGVIRT(IUnknown, AddRef)
|
||||||
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
||||||
__RPC__in IRestrictedErrorInfo * This);
|
__RPC__in IRestrictedErrorInfo * This);
|
||||||
|
|
||||||
DECLSPEC_XFGVIRT(IUnknown, Release)
|
DECLSPEC_XFGVIRT(IUnknown, Release)
|
||||||
ULONG ( STDMETHODCALLTYPE *Release )(
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
||||||
__RPC__in IRestrictedErrorInfo * This);
|
__RPC__in IRestrictedErrorInfo * This);
|
||||||
|
|
||||||
DECLSPEC_XFGVIRT(IRestrictedErrorInfo, GetErrorDetails)
|
DECLSPEC_XFGVIRT(IRestrictedErrorInfo, GetErrorDetails)
|
||||||
HRESULT ( STDMETHODCALLTYPE *GetErrorDetails )(
|
HRESULT ( STDMETHODCALLTYPE *GetErrorDetails )(
|
||||||
__RPC__in IRestrictedErrorInfo * This,
|
__RPC__in IRestrictedErrorInfo * This,
|
||||||
/* [out] */ __RPC__deref_out_opt BSTR *description,
|
/* [out] */ __RPC__deref_out_opt BSTR *description,
|
||||||
/* [out] */ __RPC__out HRESULT *error,
|
/* [out] */ __RPC__out HRESULT *error,
|
||||||
/* [out] */ __RPC__deref_out_opt BSTR *restrictedDescription,
|
/* [out] */ __RPC__deref_out_opt BSTR *restrictedDescription,
|
||||||
/* [out] */ __RPC__deref_out_opt BSTR *capabilitySid);
|
/* [out] */ __RPC__deref_out_opt BSTR *capabilitySid);
|
||||||
|
|
||||||
DECLSPEC_XFGVIRT(IRestrictedErrorInfo, GetReference)
|
DECLSPEC_XFGVIRT(IRestrictedErrorInfo, GetReference)
|
||||||
HRESULT ( STDMETHODCALLTYPE *GetReference )(
|
HRESULT ( STDMETHODCALLTYPE *GetReference )(
|
||||||
__RPC__in IRestrictedErrorInfo * This,
|
__RPC__in IRestrictedErrorInfo * This,
|
||||||
/* [out] */ __RPC__deref_out_opt BSTR *reference);
|
/* [out] */ __RPC__deref_out_opt BSTR *reference);
|
||||||
|
|
||||||
END_INTERFACE
|
END_INTERFACE
|
||||||
} IRestrictedErrorInfoVtbl;
|
} IRestrictedErrorInfoVtbl;
|
||||||
|
|
||||||
interface IRestrictedErrorInfo
|
interface IRestrictedErrorInfo
|
||||||
{
|
{
|
||||||
CONST_VTBL struct IRestrictedErrorInfoVtbl *lpVtbl;
|
CONST_VTBL struct IRestrictedErrorInfoVtbl *lpVtbl;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@ -1,32 +1,32 @@
|
|||||||
// The real robuffer.h doesn't provide C definitions, so we need to provide those here
|
// The real robuffer.h doesn't provide C definitions, so we need to provide those here
|
||||||
|
|
||||||
// No pragma once, we might include this twice (once for the regular definitions, once for the workaround)
|
// No pragma once, we might include this twice (once for the regular definitions, once for the workaround)
|
||||||
|
|
||||||
#include <apiset.h>
|
#include <apiset.h>
|
||||||
#include <apisetcconv.h>
|
#include <apisetcconv.h>
|
||||||
#include <objidl.h>
|
#include <objidl.h>
|
||||||
|
|
||||||
#ifndef _IBufferByteAccess_DEFINED
|
#ifndef _IBufferByteAccess_DEFINED
|
||||||
#define _IBufferByteAccess_DEFINED
|
#define _IBufferByteAccess_DEFINED
|
||||||
typedef interface C_IBufferByteAccess C_IBufferByteAccess;
|
typedef interface C_IBufferByteAccess C_IBufferByteAccess;
|
||||||
#endif /* _IBufferByteAccess_DEFINED */
|
#endif /* _IBufferByteAccess_DEFINED */
|
||||||
|
|
||||||
typedef struct C_IBufferByteAccessVtbl
|
typedef struct C_IBufferByteAccessVtbl
|
||||||
{
|
{
|
||||||
BEGIN_INTERFACE
|
BEGIN_INTERFACE
|
||||||
|
|
||||||
HRESULT (STDMETHODCALLTYPE* QueryInterface)(__RPC__in C_IBufferByteAccess* This,
|
HRESULT (STDMETHODCALLTYPE* QueryInterface)(__RPC__in C_IBufferByteAccess* This,
|
||||||
REFIID riid,
|
REFIID riid,
|
||||||
_COM_Outptr_ void** ppvObject);
|
_COM_Outptr_ void** ppvObject);
|
||||||
ULONG (STDMETHODCALLTYPE* AddRef)(__RPC__in C_IBufferByteAccess* This);
|
ULONG (STDMETHODCALLTYPE* AddRef)(__RPC__in C_IBufferByteAccess* This);
|
||||||
ULONG (STDMETHODCALLTYPE* Release)(__RPC__in C_IBufferByteAccess* This);
|
ULONG (STDMETHODCALLTYPE* Release)(__RPC__in C_IBufferByteAccess* This);
|
||||||
HRESULT (STDMETHODCALLTYPE* Buffer)(__RPC__in C_IBufferByteAccess* This,
|
HRESULT (STDMETHODCALLTYPE* Buffer)(__RPC__in C_IBufferByteAccess* This,
|
||||||
BYTE** value);
|
BYTE** value);
|
||||||
|
|
||||||
END_INTERFACE
|
END_INTERFACE
|
||||||
} C_IBufferByteAccessVtbl;
|
} C_IBufferByteAccessVtbl;
|
||||||
|
|
||||||
interface C_IBufferByteAccess
|
interface C_IBufferByteAccess
|
||||||
{
|
{
|
||||||
CONST_VTBL struct C_IBufferByteAccessVtbl* lpVtbl;
|
CONST_VTBL struct C_IBufferByteAccessVtbl* lpVtbl;
|
||||||
};
|
};
|
||||||
|
|||||||
@ -1,11 +1,11 @@
|
|||||||
// ISO C requires a translation unit to contain at least one declaration.
|
// ISO C requires a translation unit to contain at least one declaration.
|
||||||
extern unsigned _;
|
extern unsigned _;
|
||||||
|
|
||||||
// To force the linker to produce a .lib file, currently required for dynamic
|
// To force the linker to produce a .lib file, currently required for dynamic
|
||||||
// linking, at least the way our CMakeLists.txt are currently structured, we
|
// linking, at least the way our CMakeLists.txt are currently structured, we
|
||||||
// also need to export a symbol.
|
// also need to export a symbol.
|
||||||
#if defined(CWinRT_EXPORTS)
|
#if defined(CWinRT_EXPORTS)
|
||||||
int __declspec(dllexport) force_lib_generation(void) {
|
int __declspec(dllexport) force_lib_generation(void) {
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user