mirror of https://github.com/UMSKT/xpmgr.git
1357 lines
48 KiB
C++
1357 lines
48 KiB
C++
|
|
|
|
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
|
|
|
|
|
|
/* File created by MIDL compiler version 7.00.0555 */
|
|
/* Compiler settings for wtsprotocol.idl:
|
|
Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 7.00.0555
|
|
protocol : dce , ms_ext, c_ext, robust
|
|
error checks: allocation ref bounds_check enum stub_data
|
|
VC __declspec() decoration level:
|
|
__declspec(uuid()), __declspec(selectany), __declspec(novtable)
|
|
DECLSPEC_UUID(), MIDL_INTERFACE()
|
|
*/
|
|
/* @@MIDL_FILE_HEADING( ) */
|
|
|
|
#pragma warning( disable: 4049 ) /* more than 64k source lines */
|
|
|
|
|
|
/* verify that the <rpcndr.h> version is high enough to compile this file*/
|
|
#ifndef __REQUIRED_RPCNDR_H_VERSION__
|
|
#define __REQUIRED_RPCNDR_H_VERSION__ 500
|
|
#endif
|
|
|
|
/* verify that the <rpcsal.h> version is high enough to compile this file*/
|
|
#ifndef __REQUIRED_RPCSAL_H_VERSION__
|
|
#define __REQUIRED_RPCSAL_H_VERSION__ 100
|
|
#endif
|
|
|
|
#include "rpc.h"
|
|
#include "rpcndr.h"
|
|
|
|
#ifndef __RPCNDR_H_VERSION__
|
|
#error this stub requires an updated version of <rpcndr.h>
|
|
#endif // __RPCNDR_H_VERSION__
|
|
|
|
#ifndef COM_NO_WINDOWS_H
|
|
#include "windows.h"
|
|
#include "ole2.h"
|
|
#endif /*COM_NO_WINDOWS_H*/
|
|
|
|
#ifndef __wtsprotocol_h__
|
|
#define __wtsprotocol_h__
|
|
|
|
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
|
|
#pragma once
|
|
#endif
|
|
|
|
/* Forward Declarations */
|
|
|
|
#ifndef __IWTSProtocolManager_FWD_DEFINED__
|
|
#define __IWTSProtocolManager_FWD_DEFINED__
|
|
typedef interface IWTSProtocolManager IWTSProtocolManager;
|
|
#endif /* __IWTSProtocolManager_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolListener_FWD_DEFINED__
|
|
#define __IWTSProtocolListener_FWD_DEFINED__
|
|
typedef interface IWTSProtocolListener IWTSProtocolListener;
|
|
#endif /* __IWTSProtocolListener_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolListenerCallback_FWD_DEFINED__
|
|
#define __IWTSProtocolListenerCallback_FWD_DEFINED__
|
|
typedef interface IWTSProtocolListenerCallback IWTSProtocolListenerCallback;
|
|
#endif /* __IWTSProtocolListenerCallback_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolConnection_FWD_DEFINED__
|
|
#define __IWTSProtocolConnection_FWD_DEFINED__
|
|
typedef interface IWTSProtocolConnection IWTSProtocolConnection;
|
|
#endif /* __IWTSProtocolConnection_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolConnectionCallback_FWD_DEFINED__
|
|
#define __IWTSProtocolConnectionCallback_FWD_DEFINED__
|
|
typedef interface IWTSProtocolConnectionCallback IWTSProtocolConnectionCallback;
|
|
#endif /* __IWTSProtocolConnectionCallback_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolShadowConnection_FWD_DEFINED__
|
|
#define __IWTSProtocolShadowConnection_FWD_DEFINED__
|
|
typedef interface IWTSProtocolShadowConnection IWTSProtocolShadowConnection;
|
|
#endif /* __IWTSProtocolShadowConnection_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolShadowCallback_FWD_DEFINED__
|
|
#define __IWTSProtocolShadowCallback_FWD_DEFINED__
|
|
typedef interface IWTSProtocolShadowCallback IWTSProtocolShadowCallback;
|
|
#endif /* __IWTSProtocolShadowCallback_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolLicenseConnection_FWD_DEFINED__
|
|
#define __IWTSProtocolLicenseConnection_FWD_DEFINED__
|
|
typedef interface IWTSProtocolLicenseConnection IWTSProtocolLicenseConnection;
|
|
#endif /* __IWTSProtocolLicenseConnection_FWD_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolLogonErrorRedirector_FWD_DEFINED__
|
|
#define __IWTSProtocolLogonErrorRedirector_FWD_DEFINED__
|
|
typedef interface IWTSProtocolLogonErrorRedirector IWTSProtocolLogonErrorRedirector;
|
|
#endif /* __IWTSProtocolLogonErrorRedirector_FWD_DEFINED__ */
|
|
|
|
|
|
/* header files for imported files */
|
|
#include "oaidl.h"
|
|
#include "ocidl.h"
|
|
#include "wtsdefs.h"
|
|
|
|
#ifdef __cplusplus
|
|
extern "C"{
|
|
#endif
|
|
|
|
|
|
/* interface __MIDL_itf_wtsprotocol_0000_0000 */
|
|
/* [local] */
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern RPC_IF_HANDLE __MIDL_itf_wtsprotocol_0000_0000_v0_0_c_ifspec;
|
|
extern RPC_IF_HANDLE __MIDL_itf_wtsprotocol_0000_0000_v0_0_s_ifspec;
|
|
|
|
#ifndef __IWTSProtocolManager_INTERFACE_DEFINED__
|
|
#define __IWTSProtocolManager_INTERFACE_DEFINED__
|
|
|
|
/* interface IWTSProtocolManager */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IWTSProtocolManager;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("F9EAF6CC-ED79-4f01-821D-1F881B9F66CC")
|
|
IWTSProtocolManager : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE CreateListener(
|
|
/* [string][in] */ __RPC__in_string WCHAR *wszListenerName,
|
|
/* [out] */ __RPC__deref_out_opt IWTSProtocolListener **pProtocolListener) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE NotifyServiceStateChange(
|
|
/* [in] */ __RPC__in WTS_SERVICE_STATE *pTSServiceStateChange) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE NotifySessionOfServiceStart(
|
|
/* [in] */ __RPC__in WTS_SESSION_ID *SessionId) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE NotifySessionOfServiceStop(
|
|
/* [in] */ __RPC__in WTS_SESSION_ID *SessionId) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE NotifySessionStateChange(
|
|
/* [in] */ __RPC__in WTS_SESSION_ID *SessionId,
|
|
/* [in] */ ULONG EventId) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IWTSProtocolManagerVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IWTSProtocolManager * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IWTSProtocolManager * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IWTSProtocolManager * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateListener )(
|
|
__RPC__in IWTSProtocolManager * This,
|
|
/* [string][in] */ __RPC__in_string WCHAR *wszListenerName,
|
|
/* [out] */ __RPC__deref_out_opt IWTSProtocolListener **pProtocolListener);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *NotifyServiceStateChange )(
|
|
__RPC__in IWTSProtocolManager * This,
|
|
/* [in] */ __RPC__in WTS_SERVICE_STATE *pTSServiceStateChange);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *NotifySessionOfServiceStart )(
|
|
__RPC__in IWTSProtocolManager * This,
|
|
/* [in] */ __RPC__in WTS_SESSION_ID *SessionId);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *NotifySessionOfServiceStop )(
|
|
__RPC__in IWTSProtocolManager * This,
|
|
/* [in] */ __RPC__in WTS_SESSION_ID *SessionId);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *NotifySessionStateChange )(
|
|
__RPC__in IWTSProtocolManager * This,
|
|
/* [in] */ __RPC__in WTS_SESSION_ID *SessionId,
|
|
/* [in] */ ULONG EventId);
|
|
|
|
END_INTERFACE
|
|
} IWTSProtocolManagerVtbl;
|
|
|
|
interface IWTSProtocolManager
|
|
{
|
|
CONST_VTBL struct IWTSProtocolManagerVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IWTSProtocolManager_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IWTSProtocolManager_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IWTSProtocolManager_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IWTSProtocolManager_CreateListener(This,wszListenerName,pProtocolListener) \
|
|
( (This)->lpVtbl -> CreateListener(This,wszListenerName,pProtocolListener) )
|
|
|
|
#define IWTSProtocolManager_NotifyServiceStateChange(This,pTSServiceStateChange) \
|
|
( (This)->lpVtbl -> NotifyServiceStateChange(This,pTSServiceStateChange) )
|
|
|
|
#define IWTSProtocolManager_NotifySessionOfServiceStart(This,SessionId) \
|
|
( (This)->lpVtbl -> NotifySessionOfServiceStart(This,SessionId) )
|
|
|
|
#define IWTSProtocolManager_NotifySessionOfServiceStop(This,SessionId) \
|
|
( (This)->lpVtbl -> NotifySessionOfServiceStop(This,SessionId) )
|
|
|
|
#define IWTSProtocolManager_NotifySessionStateChange(This,SessionId,EventId) \
|
|
( (This)->lpVtbl -> NotifySessionStateChange(This,SessionId,EventId) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IWTSProtocolManager_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolListener_INTERFACE_DEFINED__
|
|
#define __IWTSProtocolListener_INTERFACE_DEFINED__
|
|
|
|
/* interface IWTSProtocolListener */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IWTSProtocolListener;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("23083765-45f0-4394-8f69-32b2bc0ef4ca")
|
|
IWTSProtocolListener : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE StartListen(
|
|
/* [in] */ __RPC__in_opt IWTSProtocolListenerCallback *pCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopListen( void) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IWTSProtocolListenerVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IWTSProtocolListener * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IWTSProtocolListener * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IWTSProtocolListener * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StartListen )(
|
|
__RPC__in IWTSProtocolListener * This,
|
|
/* [in] */ __RPC__in_opt IWTSProtocolListenerCallback *pCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopListen )(
|
|
__RPC__in IWTSProtocolListener * This);
|
|
|
|
END_INTERFACE
|
|
} IWTSProtocolListenerVtbl;
|
|
|
|
interface IWTSProtocolListener
|
|
{
|
|
CONST_VTBL struct IWTSProtocolListenerVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IWTSProtocolListener_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IWTSProtocolListener_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IWTSProtocolListener_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IWTSProtocolListener_StartListen(This,pCallback) \
|
|
( (This)->lpVtbl -> StartListen(This,pCallback) )
|
|
|
|
#define IWTSProtocolListener_StopListen(This) \
|
|
( (This)->lpVtbl -> StopListen(This) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IWTSProtocolListener_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolListenerCallback_INTERFACE_DEFINED__
|
|
#define __IWTSProtocolListenerCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IWTSProtocolListenerCallback */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IWTSProtocolListenerCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("23083765-1a2d-4de2-97de-4a35f260f0b3")
|
|
IWTSProtocolListenerCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE OnConnected(
|
|
/* [in] */ __RPC__in_opt IWTSProtocolConnection *pConnection,
|
|
/* [out] */ __RPC__deref_out_opt IWTSProtocolConnectionCallback **pCallback) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IWTSProtocolListenerCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IWTSProtocolListenerCallback * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IWTSProtocolListenerCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IWTSProtocolListenerCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *OnConnected )(
|
|
__RPC__in IWTSProtocolListenerCallback * This,
|
|
/* [in] */ __RPC__in_opt IWTSProtocolConnection *pConnection,
|
|
/* [out] */ __RPC__deref_out_opt IWTSProtocolConnectionCallback **pCallback);
|
|
|
|
END_INTERFACE
|
|
} IWTSProtocolListenerCallbackVtbl;
|
|
|
|
interface IWTSProtocolListenerCallback
|
|
{
|
|
CONST_VTBL struct IWTSProtocolListenerCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IWTSProtocolListenerCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IWTSProtocolListenerCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IWTSProtocolListenerCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IWTSProtocolListenerCallback_OnConnected(This,pConnection,pCallback) \
|
|
( (This)->lpVtbl -> OnConnected(This,pConnection,pCallback) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IWTSProtocolListenerCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolConnection_INTERFACE_DEFINED__
|
|
#define __IWTSProtocolConnection_INTERFACE_DEFINED__
|
|
|
|
/* interface IWTSProtocolConnection */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IWTSProtocolConnection;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("23083765-9095-4648-98bf-ef81c914032d")
|
|
IWTSProtocolConnection : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE GetLogonErrorRedirector(
|
|
/* [out] */ __RPC__deref_out_opt IWTSProtocolLogonErrorRedirector **ppLogonErrorRedir) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SendPolicyData(
|
|
/* [in] */ __RPC__in WTS_POLICY_DATA *pPolicyData) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE AcceptConnection( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetClientData(
|
|
/* [out] */ __RPC__out WTS_CLIENT_DATA *pClientData) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetUserCredentials(
|
|
/* [out] */ __RPC__out WTS_USER_CREDENTIAL *pUserCreds) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetLicenseConnection(
|
|
/* [out] */ __RPC__deref_out_opt IWTSProtocolLicenseConnection **ppLicenseConnection) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE AuthenticateClientToSession(
|
|
/* [out] */ __RPC__out WTS_SESSION_ID *SessionId) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE NotifySessionId(
|
|
/* [in] */ __RPC__in WTS_SESSION_ID *SessionId) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetProtocolHandles(
|
|
/* [out] */ __RPC__out HANDLE_PTR *pKeyboardHandle,
|
|
/* [out] */ __RPC__out HANDLE_PTR *pMouseHandle,
|
|
/* [out] */ __RPC__out HANDLE_PTR *pBeepHandle,
|
|
/* [out] */ __RPC__out HANDLE_PTR *pVideoHandle) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ConnectNotify(
|
|
/* [in] */ ULONG SessionId) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE IsUserAllowedToLogon(
|
|
/* [in] */ ULONG SessionId,
|
|
/* [in] */ HANDLE_PTR UserToken,
|
|
/* [string][in] */ __RPC__in_string WCHAR *pDomainName,
|
|
/* [string][in] */ __RPC__in_string WCHAR *pUserName) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SessionArbitrationEnumeration(
|
|
/* [in] */ HANDLE_PTR hUserToken,
|
|
/* [in] */ BOOL bSingleSessionPerUserEnabled,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(*pdwSessionIdentifierCount) ULONG *pSessionIdArray,
|
|
/* [out][in] */ __RPC__inout ULONG *pdwSessionIdentifierCount) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE LogonNotify(
|
|
/* [in] */ HANDLE_PTR hClientToken,
|
|
/* [string][in] */ __RPC__in_string WCHAR *wszUserName,
|
|
/* [string][in] */ __RPC__in_string WCHAR *wszDomainName,
|
|
/* [in] */ __RPC__in WTS_SESSION_ID *SessionId) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetUserData(
|
|
/* [in] */ __RPC__in WTS_POLICY_DATA *pPolicyData,
|
|
/* [out][in] */ __RPC__inout WTS_USER_DATA *pClientData) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisconnectNotify( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Close( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetProtocolStatus(
|
|
/* [out] */ __RPC__out WTS_PROTOCOL_STATUS *pProtocolStatus) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetLastInputTime(
|
|
/* [out] */ __RPC__out ULONG64 *pLastInputTime) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SetErrorInfo(
|
|
/* [in] */ ULONG ulError) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SendBeep(
|
|
/* [in] */ ULONG Frequency,
|
|
/* [in] */ ULONG Duration) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE CreateVirtualChannel(
|
|
/* [string][in] */ __RPC__in_string CHAR *szEndpointName,
|
|
/* [in] */ BOOL bStatic,
|
|
/* [in] */ ULONG RequestedPriority,
|
|
/* [out] */ __RPC__out ULONG_PTR *phChannel) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE QueryProperty(
|
|
/* [in] */ GUID QueryType,
|
|
/* [in] */ ULONG ulNumEntriesIn,
|
|
/* [in] */ ULONG ulNumEntriesOut,
|
|
/* [size_is][optional][in] */ __RPC__in_ecount_full(ulNumEntriesIn) PWTS_PROPERTY_VALUE pPropertyEntriesIn,
|
|
/* [size_is][optional][out] */ __RPC__out_ecount_full(ulNumEntriesOut) PWTS_PROPERTY_VALUE pPropertyEntriesOut) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE GetShadowConnection(
|
|
/* [out] */ __RPC__deref_out_opt IWTSProtocolShadowConnection **ppShadowConnection) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IWTSProtocolConnectionVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IWTSProtocolConnection * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IWTSProtocolConnection * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetLogonErrorRedirector )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [out] */ __RPC__deref_out_opt IWTSProtocolLogonErrorRedirector **ppLogonErrorRedir);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SendPolicyData )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [in] */ __RPC__in WTS_POLICY_DATA *pPolicyData);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *AcceptConnection )(
|
|
__RPC__in IWTSProtocolConnection * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetClientData )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [out] */ __RPC__out WTS_CLIENT_DATA *pClientData);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUserCredentials )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [out] */ __RPC__out WTS_USER_CREDENTIAL *pUserCreds);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetLicenseConnection )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [out] */ __RPC__deref_out_opt IWTSProtocolLicenseConnection **ppLicenseConnection);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *AuthenticateClientToSession )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [out] */ __RPC__out WTS_SESSION_ID *SessionId);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *NotifySessionId )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [in] */ __RPC__in WTS_SESSION_ID *SessionId);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetProtocolHandles )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [out] */ __RPC__out HANDLE_PTR *pKeyboardHandle,
|
|
/* [out] */ __RPC__out HANDLE_PTR *pMouseHandle,
|
|
/* [out] */ __RPC__out HANDLE_PTR *pBeepHandle,
|
|
/* [out] */ __RPC__out HANDLE_PTR *pVideoHandle);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ConnectNotify )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [in] */ ULONG SessionId);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *IsUserAllowedToLogon )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [in] */ ULONG SessionId,
|
|
/* [in] */ HANDLE_PTR UserToken,
|
|
/* [string][in] */ __RPC__in_string WCHAR *pDomainName,
|
|
/* [string][in] */ __RPC__in_string WCHAR *pUserName);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SessionArbitrationEnumeration )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [in] */ HANDLE_PTR hUserToken,
|
|
/* [in] */ BOOL bSingleSessionPerUserEnabled,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(*pdwSessionIdentifierCount) ULONG *pSessionIdArray,
|
|
/* [out][in] */ __RPC__inout ULONG *pdwSessionIdentifierCount);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *LogonNotify )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [in] */ HANDLE_PTR hClientToken,
|
|
/* [string][in] */ __RPC__in_string WCHAR *wszUserName,
|
|
/* [string][in] */ __RPC__in_string WCHAR *wszDomainName,
|
|
/* [in] */ __RPC__in WTS_SESSION_ID *SessionId);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetUserData )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [in] */ __RPC__in WTS_POLICY_DATA *pPolicyData,
|
|
/* [out][in] */ __RPC__inout WTS_USER_DATA *pClientData);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisconnectNotify )(
|
|
__RPC__in IWTSProtocolConnection * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Close )(
|
|
__RPC__in IWTSProtocolConnection * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetProtocolStatus )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [out] */ __RPC__out WTS_PROTOCOL_STATUS *pProtocolStatus);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetLastInputTime )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [out] */ __RPC__out ULONG64 *pLastInputTime);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SetErrorInfo )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [in] */ ULONG ulError);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SendBeep )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [in] */ ULONG Frequency,
|
|
/* [in] */ ULONG Duration);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *CreateVirtualChannel )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [string][in] */ __RPC__in_string CHAR *szEndpointName,
|
|
/* [in] */ BOOL bStatic,
|
|
/* [in] */ ULONG RequestedPriority,
|
|
/* [out] */ __RPC__out ULONG_PTR *phChannel);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryProperty )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [in] */ GUID QueryType,
|
|
/* [in] */ ULONG ulNumEntriesIn,
|
|
/* [in] */ ULONG ulNumEntriesOut,
|
|
/* [size_is][optional][in] */ __RPC__in_ecount_full(ulNumEntriesIn) PWTS_PROPERTY_VALUE pPropertyEntriesIn,
|
|
/* [size_is][optional][out] */ __RPC__out_ecount_full(ulNumEntriesOut) PWTS_PROPERTY_VALUE pPropertyEntriesOut);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *GetShadowConnection )(
|
|
__RPC__in IWTSProtocolConnection * This,
|
|
/* [out] */ __RPC__deref_out_opt IWTSProtocolShadowConnection **ppShadowConnection);
|
|
|
|
END_INTERFACE
|
|
} IWTSProtocolConnectionVtbl;
|
|
|
|
interface IWTSProtocolConnection
|
|
{
|
|
CONST_VTBL struct IWTSProtocolConnectionVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IWTSProtocolConnection_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IWTSProtocolConnection_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IWTSProtocolConnection_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IWTSProtocolConnection_GetLogonErrorRedirector(This,ppLogonErrorRedir) \
|
|
( (This)->lpVtbl -> GetLogonErrorRedirector(This,ppLogonErrorRedir) )
|
|
|
|
#define IWTSProtocolConnection_SendPolicyData(This,pPolicyData) \
|
|
( (This)->lpVtbl -> SendPolicyData(This,pPolicyData) )
|
|
|
|
#define IWTSProtocolConnection_AcceptConnection(This) \
|
|
( (This)->lpVtbl -> AcceptConnection(This) )
|
|
|
|
#define IWTSProtocolConnection_GetClientData(This,pClientData) \
|
|
( (This)->lpVtbl -> GetClientData(This,pClientData) )
|
|
|
|
#define IWTSProtocolConnection_GetUserCredentials(This,pUserCreds) \
|
|
( (This)->lpVtbl -> GetUserCredentials(This,pUserCreds) )
|
|
|
|
#define IWTSProtocolConnection_GetLicenseConnection(This,ppLicenseConnection) \
|
|
( (This)->lpVtbl -> GetLicenseConnection(This,ppLicenseConnection) )
|
|
|
|
#define IWTSProtocolConnection_AuthenticateClientToSession(This,SessionId) \
|
|
( (This)->lpVtbl -> AuthenticateClientToSession(This,SessionId) )
|
|
|
|
#define IWTSProtocolConnection_NotifySessionId(This,SessionId) \
|
|
( (This)->lpVtbl -> NotifySessionId(This,SessionId) )
|
|
|
|
#define IWTSProtocolConnection_GetProtocolHandles(This,pKeyboardHandle,pMouseHandle,pBeepHandle,pVideoHandle) \
|
|
( (This)->lpVtbl -> GetProtocolHandles(This,pKeyboardHandle,pMouseHandle,pBeepHandle,pVideoHandle) )
|
|
|
|
#define IWTSProtocolConnection_ConnectNotify(This,SessionId) \
|
|
( (This)->lpVtbl -> ConnectNotify(This,SessionId) )
|
|
|
|
#define IWTSProtocolConnection_IsUserAllowedToLogon(This,SessionId,UserToken,pDomainName,pUserName) \
|
|
( (This)->lpVtbl -> IsUserAllowedToLogon(This,SessionId,UserToken,pDomainName,pUserName) )
|
|
|
|
#define IWTSProtocolConnection_SessionArbitrationEnumeration(This,hUserToken,bSingleSessionPerUserEnabled,pSessionIdArray,pdwSessionIdentifierCount) \
|
|
( (This)->lpVtbl -> SessionArbitrationEnumeration(This,hUserToken,bSingleSessionPerUserEnabled,pSessionIdArray,pdwSessionIdentifierCount) )
|
|
|
|
#define IWTSProtocolConnection_LogonNotify(This,hClientToken,wszUserName,wszDomainName,SessionId) \
|
|
( (This)->lpVtbl -> LogonNotify(This,hClientToken,wszUserName,wszDomainName,SessionId) )
|
|
|
|
#define IWTSProtocolConnection_GetUserData(This,pPolicyData,pClientData) \
|
|
( (This)->lpVtbl -> GetUserData(This,pPolicyData,pClientData) )
|
|
|
|
#define IWTSProtocolConnection_DisconnectNotify(This) \
|
|
( (This)->lpVtbl -> DisconnectNotify(This) )
|
|
|
|
#define IWTSProtocolConnection_Close(This) \
|
|
( (This)->lpVtbl -> Close(This) )
|
|
|
|
#define IWTSProtocolConnection_GetProtocolStatus(This,pProtocolStatus) \
|
|
( (This)->lpVtbl -> GetProtocolStatus(This,pProtocolStatus) )
|
|
|
|
#define IWTSProtocolConnection_GetLastInputTime(This,pLastInputTime) \
|
|
( (This)->lpVtbl -> GetLastInputTime(This,pLastInputTime) )
|
|
|
|
#define IWTSProtocolConnection_SetErrorInfo(This,ulError) \
|
|
( (This)->lpVtbl -> SetErrorInfo(This,ulError) )
|
|
|
|
#define IWTSProtocolConnection_SendBeep(This,Frequency,Duration) \
|
|
( (This)->lpVtbl -> SendBeep(This,Frequency,Duration) )
|
|
|
|
#define IWTSProtocolConnection_CreateVirtualChannel(This,szEndpointName,bStatic,RequestedPriority,phChannel) \
|
|
( (This)->lpVtbl -> CreateVirtualChannel(This,szEndpointName,bStatic,RequestedPriority,phChannel) )
|
|
|
|
#define IWTSProtocolConnection_QueryProperty(This,QueryType,ulNumEntriesIn,ulNumEntriesOut,pPropertyEntriesIn,pPropertyEntriesOut) \
|
|
( (This)->lpVtbl -> QueryProperty(This,QueryType,ulNumEntriesIn,ulNumEntriesOut,pPropertyEntriesIn,pPropertyEntriesOut) )
|
|
|
|
#define IWTSProtocolConnection_GetShadowConnection(This,ppShadowConnection) \
|
|
( (This)->lpVtbl -> GetShadowConnection(This,ppShadowConnection) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IWTSProtocolConnection_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolConnectionCallback_INTERFACE_DEFINED__
|
|
#define __IWTSProtocolConnectionCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IWTSProtocolConnectionCallback */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IWTSProtocolConnectionCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("23083765-75eb-41fe-b4fb-e086242afa0f")
|
|
IWTSProtocolConnectionCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE OnReady( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE BrokenConnection(
|
|
/* [in] */ ULONG Reason,
|
|
/* [in] */ ULONG Source) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE StopScreenUpdates( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RedrawWindow(
|
|
/* [optional][in] */ __RPC__in WTS_SMALL_RECT *rect) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DisplayIOCtl(
|
|
/* [in] */ __RPC__in WTS_DISPLAY_IOCTL *DisplayIOCtl) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IWTSProtocolConnectionCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IWTSProtocolConnectionCallback * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IWTSProtocolConnectionCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IWTSProtocolConnectionCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *OnReady )(
|
|
__RPC__in IWTSProtocolConnectionCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *BrokenConnection )(
|
|
__RPC__in IWTSProtocolConnectionCallback * This,
|
|
/* [in] */ ULONG Reason,
|
|
/* [in] */ ULONG Source);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopScreenUpdates )(
|
|
__RPC__in IWTSProtocolConnectionCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RedrawWindow )(
|
|
__RPC__in IWTSProtocolConnectionCallback * This,
|
|
/* [optional][in] */ __RPC__in WTS_SMALL_RECT *rect);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DisplayIOCtl )(
|
|
__RPC__in IWTSProtocolConnectionCallback * This,
|
|
/* [in] */ __RPC__in WTS_DISPLAY_IOCTL *DisplayIOCtl);
|
|
|
|
END_INTERFACE
|
|
} IWTSProtocolConnectionCallbackVtbl;
|
|
|
|
interface IWTSProtocolConnectionCallback
|
|
{
|
|
CONST_VTBL struct IWTSProtocolConnectionCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IWTSProtocolConnectionCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IWTSProtocolConnectionCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IWTSProtocolConnectionCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IWTSProtocolConnectionCallback_OnReady(This) \
|
|
( (This)->lpVtbl -> OnReady(This) )
|
|
|
|
#define IWTSProtocolConnectionCallback_BrokenConnection(This,Reason,Source) \
|
|
( (This)->lpVtbl -> BrokenConnection(This,Reason,Source) )
|
|
|
|
#define IWTSProtocolConnectionCallback_StopScreenUpdates(This) \
|
|
( (This)->lpVtbl -> StopScreenUpdates(This) )
|
|
|
|
#define IWTSProtocolConnectionCallback_RedrawWindow(This,rect) \
|
|
( (This)->lpVtbl -> RedrawWindow(This,rect) )
|
|
|
|
#define IWTSProtocolConnectionCallback_DisplayIOCtl(This,DisplayIOCtl) \
|
|
( (This)->lpVtbl -> DisplayIOCtl(This,DisplayIOCtl) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IWTSProtocolConnectionCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolShadowConnection_INTERFACE_DEFINED__
|
|
#define __IWTSProtocolShadowConnection_INTERFACE_DEFINED__
|
|
|
|
/* interface IWTSProtocolShadowConnection */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IWTSProtocolShadowConnection;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("ee3b0c14-37fb-456b-bab3-6d6cd51e13bf")
|
|
IWTSProtocolShadowConnection : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE Start(
|
|
/* [string][in] */ __RPC__in_string WCHAR *pTargetServerName,
|
|
/* [in] */ DWORD TargetSessionId,
|
|
/* [in] */ BYTE HotKeyVk,
|
|
/* [in] */ USHORT HotkeyModifiers,
|
|
/* [in] */ __RPC__in_opt IWTSProtocolShadowCallback *pShadowCallback) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE Stop( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE DoTarget(
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param1Size) PBYTE pParam1,
|
|
/* [in] */ DWORD Param1Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param2Size) PBYTE pParam2,
|
|
/* [in] */ DWORD Param2Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param3Size) PBYTE pParam3,
|
|
/* [in] */ DWORD Param3Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param4Size) PBYTE pParam4,
|
|
/* [in] */ DWORD Param4Size,
|
|
/* [string][in] */ __RPC__in_string WCHAR *pClientName) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IWTSProtocolShadowConnectionVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IWTSProtocolShadowConnection * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IWTSProtocolShadowConnection * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IWTSProtocolShadowConnection * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Start )(
|
|
__RPC__in IWTSProtocolShadowConnection * This,
|
|
/* [string][in] */ __RPC__in_string WCHAR *pTargetServerName,
|
|
/* [in] */ DWORD TargetSessionId,
|
|
/* [in] */ BYTE HotKeyVk,
|
|
/* [in] */ USHORT HotkeyModifiers,
|
|
/* [in] */ __RPC__in_opt IWTSProtocolShadowCallback *pShadowCallback);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *Stop )(
|
|
__RPC__in IWTSProtocolShadowConnection * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *DoTarget )(
|
|
__RPC__in IWTSProtocolShadowConnection * This,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param1Size) PBYTE pParam1,
|
|
/* [in] */ DWORD Param1Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param2Size) PBYTE pParam2,
|
|
/* [in] */ DWORD Param2Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param3Size) PBYTE pParam3,
|
|
/* [in] */ DWORD Param3Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param4Size) PBYTE pParam4,
|
|
/* [in] */ DWORD Param4Size,
|
|
/* [string][in] */ __RPC__in_string WCHAR *pClientName);
|
|
|
|
END_INTERFACE
|
|
} IWTSProtocolShadowConnectionVtbl;
|
|
|
|
interface IWTSProtocolShadowConnection
|
|
{
|
|
CONST_VTBL struct IWTSProtocolShadowConnectionVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IWTSProtocolShadowConnection_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IWTSProtocolShadowConnection_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IWTSProtocolShadowConnection_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IWTSProtocolShadowConnection_Start(This,pTargetServerName,TargetSessionId,HotKeyVk,HotkeyModifiers,pShadowCallback) \
|
|
( (This)->lpVtbl -> Start(This,pTargetServerName,TargetSessionId,HotKeyVk,HotkeyModifiers,pShadowCallback) )
|
|
|
|
#define IWTSProtocolShadowConnection_Stop(This) \
|
|
( (This)->lpVtbl -> Stop(This) )
|
|
|
|
#define IWTSProtocolShadowConnection_DoTarget(This,pParam1,Param1Size,pParam2,Param2Size,pParam3,Param3Size,pParam4,Param4Size,pClientName) \
|
|
( (This)->lpVtbl -> DoTarget(This,pParam1,Param1Size,pParam2,Param2Size,pParam3,Param3Size,pParam4,Param4Size,pClientName) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IWTSProtocolShadowConnection_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolShadowCallback_INTERFACE_DEFINED__
|
|
#define __IWTSProtocolShadowCallback_INTERFACE_DEFINED__
|
|
|
|
/* interface IWTSProtocolShadowCallback */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IWTSProtocolShadowCallback;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("503a2504-aae5-4ab1-93e0-6d1c4bc6f71a")
|
|
IWTSProtocolShadowCallback : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE StopShadow( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE InvokeTargetShadow(
|
|
/* [string][full][in] */ __RPC__in_opt_string WCHAR *pTargetServerName,
|
|
/* [in] */ ULONG TargetSessionId,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param1Size) PBYTE pParam1,
|
|
/* [in] */ DWORD Param1Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param2Size) PBYTE pParam2,
|
|
/* [in] */ DWORD Param2Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param3Size) PBYTE pParam3,
|
|
/* [in] */ DWORD Param3Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param4Size) PBYTE pParam4,
|
|
/* [in] */ DWORD Param4Size,
|
|
/* [string][in] */ __RPC__in_string WCHAR *pClientName) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IWTSProtocolShadowCallbackVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IWTSProtocolShadowCallback * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IWTSProtocolShadowCallback * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IWTSProtocolShadowCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *StopShadow )(
|
|
__RPC__in IWTSProtocolShadowCallback * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *InvokeTargetShadow )(
|
|
__RPC__in IWTSProtocolShadowCallback * This,
|
|
/* [string][full][in] */ __RPC__in_opt_string WCHAR *pTargetServerName,
|
|
/* [in] */ ULONG TargetSessionId,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param1Size) PBYTE pParam1,
|
|
/* [in] */ DWORD Param1Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param2Size) PBYTE pParam2,
|
|
/* [in] */ DWORD Param2Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param3Size) PBYTE pParam3,
|
|
/* [in] */ DWORD Param3Size,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Param4Size) PBYTE pParam4,
|
|
/* [in] */ DWORD Param4Size,
|
|
/* [string][in] */ __RPC__in_string WCHAR *pClientName);
|
|
|
|
END_INTERFACE
|
|
} IWTSProtocolShadowCallbackVtbl;
|
|
|
|
interface IWTSProtocolShadowCallback
|
|
{
|
|
CONST_VTBL struct IWTSProtocolShadowCallbackVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IWTSProtocolShadowCallback_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IWTSProtocolShadowCallback_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IWTSProtocolShadowCallback_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IWTSProtocolShadowCallback_StopShadow(This) \
|
|
( (This)->lpVtbl -> StopShadow(This) )
|
|
|
|
#define IWTSProtocolShadowCallback_InvokeTargetShadow(This,pTargetServerName,TargetSessionId,pParam1,Param1Size,pParam2,Param2Size,pParam3,Param3Size,pParam4,Param4Size,pClientName) \
|
|
( (This)->lpVtbl -> InvokeTargetShadow(This,pTargetServerName,TargetSessionId,pParam1,Param1Size,pParam2,Param2Size,pParam3,Param3Size,pParam4,Param4Size,pClientName) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IWTSProtocolShadowCallback_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolLicenseConnection_INTERFACE_DEFINED__
|
|
#define __IWTSProtocolLicenseConnection_INTERFACE_DEFINED__
|
|
|
|
/* interface IWTSProtocolLicenseConnection */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IWTSProtocolLicenseConnection;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("23083765-178c-4079-8e4a-fea6496a4d70")
|
|
IWTSProtocolLicenseConnection : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE RequestLicensingCapabilities(
|
|
/* [out] */ __RPC__out PWTS_LICENSE_CAPABILITIES ppLicenseCapabilities,
|
|
/* [out][in] */ __RPC__inout ULONG *pcbLicenseCapabilities) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE SendClientLicense(
|
|
/* [size_is][in] */ __RPC__in_ecount_full(cbClientLicense) PBYTE pClientLicense,
|
|
/* [in] */ ULONG cbClientLicense) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RequestClientLicense(
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Reserve2) PBYTE Reserve1,
|
|
/* [in] */ ULONG Reserve2,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(*pcbClientLicense) PBYTE ppClientLicense,
|
|
/* [out][in] */ __RPC__inout ULONG *pcbClientLicense) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE ProtocolComplete(
|
|
/* [in] */ ULONG ulComplete) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IWTSProtocolLicenseConnectionVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IWTSProtocolLicenseConnection * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IWTSProtocolLicenseConnection * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IWTSProtocolLicenseConnection * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RequestLicensingCapabilities )(
|
|
__RPC__in IWTSProtocolLicenseConnection * This,
|
|
/* [out] */ __RPC__out PWTS_LICENSE_CAPABILITIES ppLicenseCapabilities,
|
|
/* [out][in] */ __RPC__inout ULONG *pcbLicenseCapabilities);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *SendClientLicense )(
|
|
__RPC__in IWTSProtocolLicenseConnection * This,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(cbClientLicense) PBYTE pClientLicense,
|
|
/* [in] */ ULONG cbClientLicense);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RequestClientLicense )(
|
|
__RPC__in IWTSProtocolLicenseConnection * This,
|
|
/* [size_is][in] */ __RPC__in_ecount_full(Reserve2) PBYTE Reserve1,
|
|
/* [in] */ ULONG Reserve2,
|
|
/* [size_is][out] */ __RPC__out_ecount_full(*pcbClientLicense) PBYTE ppClientLicense,
|
|
/* [out][in] */ __RPC__inout ULONG *pcbClientLicense);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *ProtocolComplete )(
|
|
__RPC__in IWTSProtocolLicenseConnection * This,
|
|
/* [in] */ ULONG ulComplete);
|
|
|
|
END_INTERFACE
|
|
} IWTSProtocolLicenseConnectionVtbl;
|
|
|
|
interface IWTSProtocolLicenseConnection
|
|
{
|
|
CONST_VTBL struct IWTSProtocolLicenseConnectionVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IWTSProtocolLicenseConnection_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IWTSProtocolLicenseConnection_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IWTSProtocolLicenseConnection_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IWTSProtocolLicenseConnection_RequestLicensingCapabilities(This,ppLicenseCapabilities,pcbLicenseCapabilities) \
|
|
( (This)->lpVtbl -> RequestLicensingCapabilities(This,ppLicenseCapabilities,pcbLicenseCapabilities) )
|
|
|
|
#define IWTSProtocolLicenseConnection_SendClientLicense(This,pClientLicense,cbClientLicense) \
|
|
( (This)->lpVtbl -> SendClientLicense(This,pClientLicense,cbClientLicense) )
|
|
|
|
#define IWTSProtocolLicenseConnection_RequestClientLicense(This,Reserve1,Reserve2,ppClientLicense,pcbClientLicense) \
|
|
( (This)->lpVtbl -> RequestClientLicense(This,Reserve1,Reserve2,ppClientLicense,pcbClientLicense) )
|
|
|
|
#define IWTSProtocolLicenseConnection_ProtocolComplete(This,ulComplete) \
|
|
( (This)->lpVtbl -> ProtocolComplete(This,ulComplete) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IWTSProtocolLicenseConnection_INTERFACE_DEFINED__ */
|
|
|
|
|
|
#ifndef __IWTSProtocolLogonErrorRedirector_INTERFACE_DEFINED__
|
|
#define __IWTSProtocolLogonErrorRedirector_INTERFACE_DEFINED__
|
|
|
|
/* interface IWTSProtocolLogonErrorRedirector */
|
|
/* [unique][uuid][object] */
|
|
|
|
|
|
EXTERN_C const IID IID_IWTSProtocolLogonErrorRedirector;
|
|
|
|
#if defined(__cplusplus) && !defined(CINTERFACE)
|
|
|
|
MIDL_INTERFACE("FD9B61A7-2916-4627-8DEE-4328711AD6CB")
|
|
IWTSProtocolLogonErrorRedirector : public IUnknown
|
|
{
|
|
public:
|
|
virtual HRESULT STDMETHODCALLTYPE OnBeginPainting( void) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RedirectStatus(
|
|
/* [string][in] */ __RPC__in_string LPCWSTR pszMessage,
|
|
/* [out] */ __RPC__out WTS_LOGON_ERROR_REDIRECTOR_RESPONSE *pResponse) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RedirectMessage(
|
|
/* [string][in] */ __RPC__in_string LPCWSTR pszCaption,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR pszMessage,
|
|
/* [in] */ UINT uType,
|
|
/* [out] */ __RPC__out WTS_LOGON_ERROR_REDIRECTOR_RESPONSE *pResponse) = 0;
|
|
|
|
virtual HRESULT STDMETHODCALLTYPE RedirectLogonError(
|
|
/* [in] */ LONG ntsStatus,
|
|
/* [in] */ LONG ntsSubstatus,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR pszCaption,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR pszMessage,
|
|
/* [in] */ UINT uType,
|
|
/* [out] */ __RPC__out WTS_LOGON_ERROR_REDIRECTOR_RESPONSE *pResponse) = 0;
|
|
|
|
};
|
|
|
|
#else /* C style interface */
|
|
|
|
typedef struct IWTSProtocolLogonErrorRedirectorVtbl
|
|
{
|
|
BEGIN_INTERFACE
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
|
|
__RPC__in IWTSProtocolLogonErrorRedirector * This,
|
|
/* [in] */ __RPC__in REFIID riid,
|
|
/* [annotation][iid_is][out] */
|
|
__RPC__deref_out void **ppvObject);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *AddRef )(
|
|
__RPC__in IWTSProtocolLogonErrorRedirector * This);
|
|
|
|
ULONG ( STDMETHODCALLTYPE *Release )(
|
|
__RPC__in IWTSProtocolLogonErrorRedirector * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *OnBeginPainting )(
|
|
__RPC__in IWTSProtocolLogonErrorRedirector * This);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RedirectStatus )(
|
|
__RPC__in IWTSProtocolLogonErrorRedirector * This,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR pszMessage,
|
|
/* [out] */ __RPC__out WTS_LOGON_ERROR_REDIRECTOR_RESPONSE *pResponse);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RedirectMessage )(
|
|
__RPC__in IWTSProtocolLogonErrorRedirector * This,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR pszCaption,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR pszMessage,
|
|
/* [in] */ UINT uType,
|
|
/* [out] */ __RPC__out WTS_LOGON_ERROR_REDIRECTOR_RESPONSE *pResponse);
|
|
|
|
HRESULT ( STDMETHODCALLTYPE *RedirectLogonError )(
|
|
__RPC__in IWTSProtocolLogonErrorRedirector * This,
|
|
/* [in] */ LONG ntsStatus,
|
|
/* [in] */ LONG ntsSubstatus,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR pszCaption,
|
|
/* [string][in] */ __RPC__in_string LPCWSTR pszMessage,
|
|
/* [in] */ UINT uType,
|
|
/* [out] */ __RPC__out WTS_LOGON_ERROR_REDIRECTOR_RESPONSE *pResponse);
|
|
|
|
END_INTERFACE
|
|
} IWTSProtocolLogonErrorRedirectorVtbl;
|
|
|
|
interface IWTSProtocolLogonErrorRedirector
|
|
{
|
|
CONST_VTBL struct IWTSProtocolLogonErrorRedirectorVtbl *lpVtbl;
|
|
};
|
|
|
|
|
|
|
|
#ifdef COBJMACROS
|
|
|
|
|
|
#define IWTSProtocolLogonErrorRedirector_QueryInterface(This,riid,ppvObject) \
|
|
( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) )
|
|
|
|
#define IWTSProtocolLogonErrorRedirector_AddRef(This) \
|
|
( (This)->lpVtbl -> AddRef(This) )
|
|
|
|
#define IWTSProtocolLogonErrorRedirector_Release(This) \
|
|
( (This)->lpVtbl -> Release(This) )
|
|
|
|
|
|
#define IWTSProtocolLogonErrorRedirector_OnBeginPainting(This) \
|
|
( (This)->lpVtbl -> OnBeginPainting(This) )
|
|
|
|
#define IWTSProtocolLogonErrorRedirector_RedirectStatus(This,pszMessage,pResponse) \
|
|
( (This)->lpVtbl -> RedirectStatus(This,pszMessage,pResponse) )
|
|
|
|
#define IWTSProtocolLogonErrorRedirector_RedirectMessage(This,pszCaption,pszMessage,uType,pResponse) \
|
|
( (This)->lpVtbl -> RedirectMessage(This,pszCaption,pszMessage,uType,pResponse) )
|
|
|
|
#define IWTSProtocolLogonErrorRedirector_RedirectLogonError(This,ntsStatus,ntsSubstatus,pszCaption,pszMessage,uType,pResponse) \
|
|
( (This)->lpVtbl -> RedirectLogonError(This,ntsStatus,ntsSubstatus,pszCaption,pszMessage,uType,pResponse) )
|
|
|
|
#endif /* COBJMACROS */
|
|
|
|
|
|
#endif /* C style interface */
|
|
|
|
|
|
|
|
|
|
#endif /* __IWTSProtocolLogonErrorRedirector_INTERFACE_DEFINED__ */
|
|
|
|
|
|
/* Additional Prototypes for ALL interfaces */
|
|
|
|
/* end of Additional Prototypes */
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif
|
|
|
|
|