Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

276 lines
14 KiB

  1. //Copyright (c) 1998 - 1999 Microsoft Corporation
  2. /*********************************************************************************************
  3. *
  4. *
  5. * Module Name:
  6. *
  7. * CfgBkEnd.idl
  8. *
  9. * Abstract:
  10. * This is the IDL file for the CfgBkEnd Object.
  11. *
  12. * Author:
  13. *
  14. *
  15. * Revision:
  16. *
  17. *
  18. ************************************************************************************************/
  19. // This file will be processed by the MIDL tool to
  20. // produce the type library (CfgBkEnd.tlb) and marshalling code.
  21. struct _USERCONFIGW;
  22. typedef struct _USERCONFIGW* PUSERCONFIG;
  23. struct _ASYNCCONFIGW;
  24. typedef struct _ASYNCCONFIGW* PASYNCCONFIG;
  25. import "oaidl.idl";
  26. import "ocidl.idl";
  27. typedef PVOID PSECURITY_DESCRIPTOR;
  28. typedef TCHAR * PWINSTATIONNAME;
  29. import "idldefs.h";
  30. cpp_quote("extern const CLSID CLSID_CfgComp;")
  31. cpp_quote("#define CFGBKEND_ALREADY_INITIALIZED MAKE_HRESULT(SEVERITY_SUCCESS,FACILITY_ITF, 0xB020)")
  32. cpp_quote("#define CFGBKEND_E_NOT_INITIALIZED MAKE_HRESULT(SEVERITY_ERROR,FACILITY_ITF, 0xB021)")
  33. cpp_quote("#define CFGBKEND_EXTDELETE_FAILED MAKE_HRESULT(SEVERITY_SUCCESS, FACILITY_ITF, 0xB022)")
  34. cpp_quote("#define CFGBKEND_ADAPTERENUM_FAILED MAKE_HRESULT(SEVERITY_SUCCESS,FACILITY_ITF,0xB023)")
  35. cpp_quote("#define CFGBKEND_DEFAULT_SECURITY_UNKNOWN MAKE_HRESULT(SEVERITY_SUCCESS,FACILITY_ITF, 0xB024)")
  36. cpp_quote("#define UPDATE_LANADAPTER 0x00000001" )
  37. cpp_quote("#define UPDATE_ENABLEWINSTATION 0x00000002" )
  38. cpp_quote("#define UPDATE_MAXINSTANCECOUNT 0x00000004" )
  39. cpp_quote("#define UPDATE_COMMENT 0x00000008" )
  40. cpp_quote("#define UPDATE_ALL UPDATE_LANADAPTER | UPDATE_ENABLEWINSTATION | UPDATE_MAXINSTANCECOUNT | UPDATE_COMMENT" )
  41. [
  42. object,
  43. local,
  44. uuid(BB0D7186-3C44-11D2-BB98-3078302C2030),
  45. helpstring("ICfgComp Interface"),
  46. pointer_default(unique)
  47. ]
  48. interface ICfgComp : IUnknown
  49. {
  50. [helpstring("method GetSecurityDescriptor")] HRESULT GetSecurityDescriptor([in,string]PWINSTATIONNAME pWSName,[out] long * pSize,[out, size_is( , *pSize)]PSECURITY_DESCRIPTOR *ppSecurityDescriptor);
  51. [helpstring("method SetSecurityDescriptor")] HRESULT SetSecurityDescriptor([in,string]PWINSTATIONNAME pWsName,[in] DWORD Size,[in,size_is(Size)]PSECURITY_DESCRIPTOR pSecurityDescriptor);
  52. [helpstring("method GetUserConfig")] HRESULT GetUserConfig([in,string]PWINSTATIONNAME pWsName, [out] long * pSize,[out, size_is( , *pSize)]PUSERCONFIG * ppUser, [in] BOOLEAN bPerformMerger);
  53. [helpstring("method GetEncryptionLevels")] HRESULT GetEncryptionLevels([in,string]WCHAR * pName, NameType Type,ULONG * pNumEncryptionLevels, Encryption ** ppEncryption);
  54. [helpstring("method Initialize")] HRESULT Initialize();
  55. [helpstring("method GetWinstationList")] HRESULT GetWinstationList([out]ULONG * NumWinstations,[out]ULONG * pSize,[out, size_is( , *pSize)]PWS * ppWS);
  56. [helpstring("method GetWdTypeList")] HRESULT GetWdTypeList([out]ULONG *pNumWd,[out]ULONG * pSize,[out, size_is( , *pSize)]WCHAR **ppData);
  57. [helpstring("method IsWSNameUnique")] HRESULT IsWSNameUnique([in,string]PWINSTATIONNAME pWSName,BOOL *pUnique);
  58. [helpstring("method GetTransportTypes")] HRESULT GetTransportTypes([in, string]WCHAR * Name, NameType Type,[out]ULONG *pNumPd,[out]ULONG * pSize,[out, size_is( , *pSize)]WCHAR **ppData);
  59. [helpstring("method GetLanAdapterList")] HRESULT GetLanAdapterList([in,string]WCHAR * pdName,[out]ULONG * pNumAdapters,[out]ULONG * pSize,[out, size_is( , *pSize)]WCHAR ** ppData);
  60. [helpstring("method GetLanAdapterList2")] HRESULT GetLanAdapterList2([in,string]WCHAR * pdName,[out]ULONG * pNumAdapters,[out]PGUIDTBL *);
  61. [helpstring("method BuildGuidTable")] HRESULT BuildGuidTable([in] PGUIDTBL * , [in] int , [ in ,string ]WCHAR * );
  62. [helpstring("method SetUserConfig")] HRESULT SetUserConfig([in,string]PWINSTATIONNAME pWsName, ULONG size, [in] PUSERCONFIG pUserConfig , [ out ] DWORD *);
  63. [helpstring("method EnableWinstation")] HRESULT EnableWinstation([in,string]PWINSTATIONNAME pWSName, BOOL fEnable);
  64. [helpstring("method RenameWinstation")] HRESULT RenameWinstation([in,string]PWINSTATIONNAME pOldWinstation,[in,string]PWINSTATIONNAME pNewWinstation);
  65. [helpstring("method IsSessionReadOnly")] HRESULT IsSessionReadOnly(BOOL * pReadOnly);
  66. [helpstring("method GetDefaultSecurityDescriptor")] HRESULT GetDefaultSecurityDescriptor([out]long * pSize,[out, size_is( , *pSize)]PSECURITY_DESCRIPTOR *ppSecurityDescriptor);
  67. [helpstring("method UpDateWS")] HRESULT UpDateWS([in]PWS winstationInfo, DWORD Data , [ out ]DWORD *, [in] BOOLEAN bPerformMerger);
  68. [helpstring("method GetWSInfo")] HRESULT GetWSInfo(PWINSTATIONNAME pWSName,[out]long * pSize,[out, size_is( , *pSize)] WS** ppWS);
  69. [helpstring("method CreateNewWS")] HRESULT CreateNewWS(WS WinstationInfo,long UserCnfgSize, PUSERCONFIG pUserConfig,PASYNCCONFIG pAsyncConfig);
  70. [helpstring("method GetDefaultUserConfig")] HRESULT GetDefaultUserConfig([in, string]WCHAR * WdName,[out] long * pSize,[out, size_is( , *pSize)]PUSERCONFIG * ppUser);
  71. [helpstring("method IsNetWorkConnectionUnique")] HRESULT IsNetWorkConnectionUnique([in,string]WCHAR * WdName,[in, string]WCHAR * PdName, ULONG LanAdapter, BOOL * pUnique);
  72. [helpstring("method DeleteWS")] HRESULT DeleteWS([in, string]PWINSTATIONNAME pWs);
  73. [helpstring("method ForceUpdate")] HRESULT ForceUpdate( void );
  74. [helpstring("method Refresh")] HRESULT Refresh( void );
  75. [helpstring("method GetWdType")] HRESULT GetWdType( [ in ,string ]WCHAR * pWdName , [out]ULONG * pulType );
  76. [helpstring("method GetTransportType")] HRESULT GetTransportType( [ in , string ]WCHAR * , [ in , string ]WCHAR * , [ out ]DWORD * );
  77. [helpstring("method IsAsyncUnique")] HRESULT IsAsyncUnique( [in] WCHAR * , [in] WCHAR * , [out]BOOL * );
  78. [helpstring("method SetAsyncConfig")] HRESULT SetAsyncConfig( [ in ]WCHAR * , [in]NameType , [ in ]PASYNCCONFIG , [ out ]DWORD * );
  79. [helpstring("method GetAsyncConfig")] HRESULT GetAsyncConfig( [ in ]WCHAR * , [in]NameType , [ out ]PASYNCCONFIG );
  80. [helpstring("method GetDeviceList")] HRESULT GetDeviceList( [in]WCHAR * , [in]NameType , [out]ULONG * , [out]BYTE ** );
  81. [helpstring("method GetConnTypeName")] HRESULT GetConnTypeName( [in]int , [out]WCHAR * );
  82. [helpstring("method GetHWReceiveName")] HRESULT GetHWReceiveName( [in]int , [out]WCHAR * );
  83. [helpstring("method GetHWTransmitName")] HRESULT GetHWTransmitName( [in]int , [out]WCHAR * );
  84. [helpstring("method GetModemCallbackString")] HRESULT GetModemCallbackString( [in]int , [out]WCHAR * );
  85. [helpstring("method GetCaps")] HRESULT GetCaps( [ in ]WCHAR * , [ out ]ULONG * );
  86. [helpstring("method QueryLoggedOnCount")] HRESULT QueryLoggedOnCount( [ in ] WCHAR * , [ out ]LONG * );
  87. // [helpstring("method GetNumofWinStations")] HRESULT GetNumofWinStations( [ out ]ULONG * );
  88. [helpstring("method GetNumofWinStations")] HRESULT GetNumofWinStations([ in ] WCHAR * WdName,[in] WCHAR * PdName,[ out ]ULONG * );
  89. [helpstring("method IsAsyncDeviceAvailable")] BOOL IsAsyncDeviceAvailable(LPCTSTR pDeviceName);
  90. [helpstring("method GetWdKey")] HRESULT GetWdKey( [ in ] WCHAR * , [ out , string ] WCHAR * );
  91. [helpstring("method UpdateSessionDirectory" )] HRESULT UpdateSessionDirectory( [ out ]DWORD * );
  92. [helpstring("method GetColorDepth")] HRESULT GetColorDepth( [ in , string ]PWINSTATIONNAME, [out] BOOL*, [out] DWORD * );
  93. [helpstring("method SetColorDepth")] HRESULT SetColorDepth( [ in , string ]PWINSTATIONNAME , [in] BOOL, [out] DWORD * );
  94. [helpstring("method GetKeepAliveTimeout")] HRESULT GetKeepAliveTimeout( [ in , string ]PWINSTATIONNAME, [out] BOOL*, [out] DWORD * );
  95. [helpstring("method SetKeepAliveTimeout")] HRESULT SetKeepAliveTimeout( [ in , string ]PWINSTATIONNAME , [in] BOOL, [out] DWORD * );
  96. };
  97. [
  98. object,
  99. local,
  100. uuid(6E92F337-AF3E-11d2-A39B-00C04FB90546),
  101. helpstring("ISettingsComp Interface"),
  102. pointer_default(unique)
  103. ]
  104. interface ISettingsComp : IUnknown
  105. {
  106. // [helpstring("method GetCachedSessions")] HRESULT GetCachedSessions(DWORD * pCachedSessions);
  107. // [helpstring("method SetCachedSessions")] HRESULT SetCachedSessions(DWORD dCachedSessions);
  108. [helpstring("method GetDelDirsOnExit")] HRESULT GetDelDirsOnExit(BOOL * pDelDirsOnExit);
  109. [helpstring("method SetDelDirsOnExit")] HRESULT SetDelDirsOnExit(BOOL bDelDirsOnExit);
  110. [helpstring("method GetUseTempDirPerSession")] HRESULT GetUseTempDirPerSession(BOOL * pbTempDir);
  111. [helpstring("method SetUseTempDirPerSession")] HRESULT SetUseTempDirPerSession(BOOL bTempDirPerSession);
  112. [helpstring("method GetInternetConLic")] HRESULT GetInternetConLic( BOOL * pbInternetConLic , DWORD * );
  113. [helpstring("method SetInternetConLic")] HRESULT SetInternetConLic( BOOL bInternetConLic , DWORD * );
  114. // [helpstring("method GetDefaultSecurity")] HRESULT GetDefaultSecurity(ULONG * pDefaultSecurity);
  115. // [helpstring("method SetDefaultSecurity")] HRESULT SetDefaultSecurity(ULONG Offset);
  116. [helpstring("method SetActiveDesktopState")] HRESULT SetActiveDesktopState( [in] BOOL , [out] DWORD * );
  117. [helpstring("method GetActiveDesktopState")] HRESULT GetActiveDesktopState( [out] BOOL * , [out] DWORD * );
  118. [helpstring("method GetTermSrvMode")] HRESULT GetTermSrvMode( [out] DWORD * , [out] DWORD * );
  119. [helpstring("method GetUserPerm")] HRESULT GetUserPerm( [out] BOOL * , [out] DWORD * );
  120. [helpstring("method SetUserPerm")] HRESULT SetUserPerm( [in] BOOL , [out] DWORD * );
  121. [helpstring("method GetSalemHelpMode")] HRESULT GetSalemHelpMode( [out] BOOL*, [out] DWORD * );
  122. [helpstring("method SetSalemHelpMode")] HRESULT SetSalemHelpMode( [in] BOOL, [out] DWORD * );
  123. [helpstring("method GetDenyTSConnections")] HRESULT GetDenyTSConnections( [out] BOOL* , [out] DWORD* );
  124. [helpstring("method SetDenyTSConnections")] HRESULT SetDenyTSConnections( [in] BOOL , [out] DWORD* );
  125. [helpstring("method GetTimeZoneRedirection")] HRESULT GetTimeZoneRedirection( [out] BOOL* , [out] DWORD* );
  126. [helpstring("method SetTimeZoneRedirection")] HRESULT SetTimeZoneRedirection( [in] BOOL , [out] DWORD* );
  127. [helpstring("method GetSingleSessionState")] HRESULT GetSingleSessionState( [out] BOOL*, [out] DWORD * );
  128. [helpstring("method SetSingleSessionState")] HRESULT SetSingleSessionState( [in] BOOL, [out] DWORD * );
  129. [helpstring("method GetDisableForcibleLogoff")] HRESULT GetDisableForcibleLogoff( [out] BOOL*, [out] DWORD * );
  130. [helpstring("method SetDisableForcibleLogoff")] HRESULT SetDisableForcibleLogoff( [in] BOOL, [out] DWORD * );
  131. [helpstring("method GetProfilePath")] HRESULT GetProfilePath( [out, string ]BSTR*, [out] DWORD * );
  132. [helpstring("method SetProfilePath")] HRESULT SetProfilePath( [in , string ]BSTR , [out] DWORD * );
  133. [helpstring("method GetHomeDir")] HRESULT GetHomeDir( [ out, string ]BSTR*, [out] DWORD * );
  134. [helpstring("method SetHomeDir")] HRESULT SetHomeDir( [ in , string ]BSTR , [out] DWORD * );
  135. [helpstring("method GetLicensingMode")] HRESULT GetLicensingMode( ULONG * pulMode , DWORD * );
  136. [helpstring("method SetLicensingMode")] HRESULT SetLicensingMode( ULONG ulMode , DWORD *, DWORD * );
  137. [helpstring("method GetLicensingModeInfo")] HRESULT GetLicensingModeInfo( [in] ULONG ulMode , [out, string] WCHAR **pwszName, [out, string] WCHAR **pwszDescription, [out] DWORD * );
  138. [helpstring("method GetLicensingModeList")] HRESULT GetLicensingModeList( [out] ULONG *pcModes, [out, size_is( , *pcModes)] ULONG **prgulModes, [out] DWORD * );
  139. };
  140. [
  141. object,
  142. local,
  143. uuid(1c07e443-150e-4829-986a-a14e21dd50e5),
  144. helpstring("IUserSecurity Interface"),
  145. pointer_default(unique)
  146. ]
  147. interface IUserSecurity : IUnknown
  148. {
  149. [ helpstring( "method ModifyUserAccess" ) ] HRESULT ModifyUserAccess( [in] WCHAR * ,
  150. [in] WCHAR *pwszAccountName ,
  151. [in] DWORD dwMask ,
  152. [in] BOOL fDel,
  153. [in] BOOL fAllow ,
  154. [in] BOOL ,
  155. [in] BOOL ,
  156. [out]DWORD *pdwStatus );
  157. [ helpstring( "method GetUserPermList" ) ] HRESULT GetUserPermList( [in] WCHAR *pwszWinstaName ,
  158. [out]DWORD *pcbItems ,
  159. [out]PUSERPERMLIST *ppUserPermList ,
  160. [in] BOOL fAudit );
  161. [ helpstring( "method ModifyDefaultSecurity" ) ]
  162. HRESULT ModifyDefaultSecurity([in] WCHAR * ,
  163. [in] WCHAR *pwszAccountName ,
  164. [in] DWORD dwMask ,
  165. [in] BOOL fDel,
  166. [in] BOOL fAllow ,
  167. [in] BOOL ,
  168. [out]DWORD *pdwStatus );
  169. };
  170. [
  171. uuid(BB0D7187-3C44-11D2-BB98-3078302C2030),
  172. helpstring("CfgComp Class")
  173. ]
  174. coclass CfgComp
  175. {
  176. [default] interface ICfgComp;
  177. interface ISettingsComp;
  178. interface IUserSecurity;
  179. };
  180. /*
  181. [
  182. uuid(BB0D7179-3C44-11D2-BB98-3078302C2030),
  183. version(1.0),
  184. helpstring("CfgBkEnd 1.0 Type Library")
  185. ]
  186. library CFGBKENDLib
  187. {
  188. importlib("stdole2.tlb");
  189. [
  190. uuid(BB0D7187-3C44-11D2-BB98-3078302C2030),
  191. helpstring("CfgComp Class")
  192. ]
  193. coclass CfgComp
  194. {
  195. [default] interface ICfgComp;
  196. };
  197. };*/