ReactOS  0.4.13-dev-1148-g9b75b67
netcon.idl
Go to the documentation of this file.
1 /*
2  * Copyright 2009 Jacek Caban for CodeWeavers
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17  */
18 
19 #ifndef DO_NO_IMPORTS
20 import "oaidl.idl";
21 import "unknwn.idl";
22 import "wtypes.idl";
23 /* import "prsht.idl"; */
24 #endif
25 
26 cpp_quote("DEFINE_GUID(CLSID_NetSharingManager,0x5c63c1ad,0x3956,0x4ff8,0x84,0x86,0x40,0x03,0x47,0x58,0x31,0x5b);")
27 
28 [
29  object,
30  uuid(c08956a1-1cd3-11d1-b1c5-00805fc1270e),
32 ]
34 {
36  {
37  NCCF_NONE = 0x0000,
38  NCCF_ALL_USERS = 0x0001,
44  NCCF_BRANDED = 0x0080,
45  NCCF_SHARED = 0x0100,
46  NCCF_BRIDGED = 0x0200,
47  NCCF_FIREWALLED = 0x0400,
48  NCCF_DEFAULT = 0x0800,
51  NCCF_QUARANTINED = 0x4000,
52  NCCF_RESERVED = 0x8000,
53  NCCF_BLUETOOTH_MASK = 0x000F0000,
54  NCCF_LAN_MASK = 0x00F00000
56 
57  typedef enum tagNETCON_STATUS
58  {
72  } NETCON_STATUS;
73 
74  typedef enum tagNETCON_TYPE
75  {
83  } NETCON_TYPE;
84 
85  typedef enum tagNETCON_MEDIATYPE
86  {
98 
99  typedef struct tagNETCON_PROPERTIES
100  {
110 
111  HRESULT Connect();
112 
114 
115  HRESULT Delete();
116 
118  [in, string] LPCWSTR pszwDuplicateName,
119  [out] INetConnection **ppCon);
120 
122 
123  HRESULT GetUiObjectClassId([out, ref] CLSID *pclsid);
124 
125  HRESULT Rename([in, string] LPCWSTR pszwNewName);
126 }
127 
128 [
129  object,
130  uuid(24b7e9b5-e38f-4685-851b-00892cf5f940),
132  dual,
134 ]
136 {
137  [propget, id(1)]
138  HRESULT Name([out, retval] BSTR *pbstrName);
139 
140  [propget, id(2)]
141  HRESULT IPProtocol([out, retval] UCHAR *pucIPProt);
142 
143  [propget, id(3)]
144  HRESULT ExternalPort([out, retval] long *pusPort);
145 
146  [propget, id(4)]
147  HRESULT InternalPort([out, retval] long *pusPort);
148 
149  [propget, id(5)]
150  HRESULT Options([out, retval] long *pdwOptions);
151 
152  [propget, id(6)]
153  HRESULT TargetName([out, retval] BSTR *pbstrTargetName);
154 
155  [propget, id(7)]
156  HRESULT TargetIPAddress([out, retval] BSTR *pbstrTargetIPAddress);
157 
158  [propget, id(8)]
159  HRESULT Enabled([out, retval] VARIANT_BOOL *pbool);
160 }
161 
162 [
163  object,
164  uuid(c08956b1-1cd3-11d1-b1c5-00805fc1270e),
166  dual,
168 ]
170 {
171  [id(1)]
172  HRESULT Disable();
173 
174  [id(2)]
175  HRESULT Enable();
176 
177  [propget, id(3)]
178  HRESULT Properties([out, retval] INetSharingPortMappingProps **ppNSPMP);
179 
180  [id(4)]
181  HRESULT Delete();
182 };
183 [
184  object,
185  uuid(02e4a2de-da20-4e34-89c8-ac22275a010b),
187  dual,
189 ]
191 {
192  [propget, id(DISPID_NEWENUM), restricted]
193  HRESULT _NewEnum([out, retval] IUnknown **pVal);
194 
195  [propget, id(1)]
196  HRESULT Count([out, retval] long *pVal);
197 }
198 
199 [
200  object,
201  uuid(c08956b6-1cd3-11d1-b1c5-00805fc1270e),
203  dual,
205 ]
207 {
212 
217 
218  typedef enum tagICS_TARGETTYPE {
222 
223  [propget, id(1)]
224  HRESULT SharingEnabled([out, retval] VARIANT_BOOL *pbEnabled);
225 
226  [propget, id(2)]
228 
229  [id(3)]
231 
232  [id(4)]
234 
235  [propget, id(5)]
236  HRESULT InternetFirewallEnabled([out, retval] VARIANT_BOOL *pbEnabled);
237 
238  [id(6)]
240 
241  [id(7)]
243 
244  [propget, id(8)]
247  [out, retval] INetSharingPortMappingCollection **ppColl);
248 
249  [id(9)]
251  [in] BSTR bstrName,
252  [in] UCHAR ucIPProtocol,
253  [in] USHORT usExternalPort,
254  [in] USHORT usInternalPort,
255  [in] DWORD dwOptions,
256  [in] BSTR bstrTargetNameOrIPAddress,
257  [in] ICS_TARGETTYPE eTargetType,
258  [out, retval] INetSharingPortMapping **ppMapping );
259 
260  [id(10)]
262 }
263 
264 [
265  object,
266  uuid(c08956b4-1cd3-11d1-b1c5-00805fc1270e),
268 ]
270 {
271  HRESULT Next(
272  [in] ULONG celt,
273  [out, size_is(celt), length_is(*pceltFetched)] VARIANT *rgVar,
274  [out] ULONG *pceltFetched);
275 
276  HRESULT Skip([in] ULONG celt);
277 
278  HRESULT Reset();
279 
281 }
282 
283 [
284  object,
285  uuid(c08956b5-1cd3-11d1-b1c5-00805fc1270e),
287 ]
289 {
290  HRESULT Next(
291  [in] ULONG celt,
292  [out, size_is(celt), length_is(*pCeltFetched)] VARIANT *rgVar,
293  [out] ULONG *pCeltFetched);
294 
295  HRESULT Skip([in] ULONG celt);
296 
297  HRESULT Reset();
298 
300 }
301 
302 [
303  object,
304  uuid(f4277c95-ce5b-463d-8167-5662d9bcaa72),
306  dual,
308 ]
310 {
311  [propget, id(1)]
312  HRESULT Guid([out, retval] BSTR *pbstrGuid);
313 
314  [propget, id(2)]
315  HRESULT Name([out, retval] BSTR *pbstrName);
316 
317  [propget, id(3)]
318  HRESULT DeviceName([out, retval] BSTR *pbstrDeviceName);
319 
320  [propget, id(4)]
321  HRESULT Status([out, retval] NETCON_STATUS *pStatus);
322 
323  [propget, id(5)]
324  HRESULT MediaType([out, retval] NETCON_MEDIATYPE *pMediaType);
325 
326  [propget, id(6)]
327  HRESULT Characteristics([out, retval] DWORD *pdwFlags);
328 }
329 
330 [
331  object,
332  uuid(7d7a6355-f372-4971-a149-bfc927be762a),
334  dual,
336 ]
338 {
339  [propget, id(DISPID_NEWENUM), restricted]
340  HRESULT _NewEnum([out, retval] IUnknown **pVal);
341 
342  [propget, id(1)]
343  HRESULT Count([out, retval] long *pVal);
344 }
345 
346 [
347  object,
348  uuid(33c4643c-7811-46fa-a89a-768597bd7223),
350  dual,
352  ]
354 {
355  [propget, id(DISPID_NEWENUM), restricted]
356  HRESULT _NewEnum([out, retval] IUnknown **pVal);
357 
358  [propget, id(1)]
359  HRESULT Count([out, retval] long *pVal);
360 }
361 
362 [
363  object,
364  uuid(38ae69e0-4409-402a-a2cb-e965c727f840),
366  dual,
368  ]
370 {
371  [propget, id(DISPID_NEWENUM), restricted]
372  HRESULT _NewEnum([out, retval] IUnknown **pVal);
373 
374  [propget, id(1)]
375  HRESULT Count([out, retval] long *pVal);
376 }
377 
378 [
379  object,
380  uuid(c08956b7-1cd3-11d1-b1c5-00805fc1270e),
382  dual,
384 ]
386 {
387  [propget, id(1)]
388  HRESULT SharingInstalled([out, retval] VARIANT_BOOL *pbInstalled);
389 
390  [propget, id(2)]
392  [in] SHARINGCONNECTION_ENUM_FLAGS Flags,
393  [out, retval] INetSharingPublicConnectionCollection **ppColl);
394 
395  [propget, id(3)]
397  [in] SHARINGCONNECTION_ENUM_FLAGS Flags,
398  [out, retval] INetSharingPrivateConnectionCollection **ppColl);
399 
400  [propget, id(6)]
402  [in] INetConnection *pNetConnection,
403  [out, retval] INetSharingConfiguration **ppNetSharingConfiguration);
404 
405  [propget, id(7)]
407 
408  [propget, id(8)]
410  [in] INetConnection *pNetConnection,
411  [out, retval] INetConnectionProps **ppProps);
412 }
DWORD dwOptions
Definition: solitaire.cpp:23
INetSharingPortMappingProps Properties
Type
Definition: Type.h:6
HRESULT Rename([in, string] LPCWSTR pszwNewName)
INetSharingPrivateConnectionCollection EnumPrivateConnections([in] SHARINGCONNECTION_ENUM_FLAGS Flags)
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
struct INetConnection::tagNETCON_PROPERTIES NETCON_PROPERTIES
coclass SHDocVw::ShellWindows dual
Definition: exdisp.idl:631
HRESULT EnableInternetFirewall()
VARIANT_BOOL InternetFirewallEnabled
HRESULT GetProperties([out] NETCON_PROPERTIES **ppProps)
HRESULT DisableInternetFirewall()
HRESULT Disconnect()
VARIANT_BOOL SharingInstalled
OLECHAR * BSTR
Definition: compat.h:1934
enum INetConnection::tagNETCON_STATUS NETCON_STATUS
enum INetConnection::tagNETCON_TYPE NETCON_TYPE
HRESULT AddPortMapping([in] BSTR bstrName, [in] UCHAR ucIPProtocol, [in] USHORT usExternalPort, [in] USHORT usInternalPort, [in] DWORD dwOptions, [in] BSTR bstrTargetNameOrIPAddress, [in] ICS_TARGETTYPE eTargetType, [out, retval] INetSharingPortMapping **ppMapping)
short VARIANT_BOOL
Definition: compat.h:1931
Definition: send.c:47
coclass AMMultiMediaStream cpp_quote("DEFINE_GUID(CLSID_AMDirectDrawStream, 0x49c47ce4, 0x9ba4, 0x11d0, 0x82, 0x12, 0x00, 0xc0, 0x4f, 0xc3, 0x2c, 0x45);") cpp_quote("DEFINE_GUID(CLSID_AMAudioStream
coclass TestTypelib::Coclass3 oleautomation
Definition: tmarshal.idl:199
VARIANT_BOOL SharingEnabled
INetSharingEveryConnectionCollection EnumEveryConnection
NETCON_MEDIATYPE
Definition: netcon.h:66
HRESULT Clone([out] IEnumNetSharingPublicConnection **ppenum)
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
HRESULT Clone([out] IEnumNetSharingPrivateConnection **ppenum)
enum INetSharingConfiguration::tagICS_TARGETTYPE ICS_TARGETTYPE
const DISPID DISPID_NEWENUM
Definition: oaidl.idl:575
enum INetConnection::tagNETCON_MEDIATYPE NETCON_MEDIATYPE
NETCON_STATUS Status
INetSharingConfiguration INetSharingConfigurationForINetConnection([in] INetConnection pNetConnection)
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
enum INetSharingConfiguration::tagSHARINGCONNECTION_ENUM_FLAGS SHARINGCONNECTION_ENUM_FLAGS
#define d
Definition: ke_i.h:81
enum INetSharingConfiguration::tagSHARINGCONNECTIONTYPE SHARINGCONNECTIONTYPE
NETCON_MEDIATYPE MediaType
LONG HRESULT
Definition: typedefs.h:77
enum INetConnection::tagNETCON_CHARACTERISTIC_FLAGS NETCON_CHARACTERISTIC_FLAGS
INetSharingPortMappingCollection EnumPortMappings([in] SHARINGCONNECTION_ENUM_FLAGS Flags)
static FILE * out
Definition: regtests2xml.c:44
unsigned long DWORD
Definition: ntddk_ex.h:95
unsigned char UCHAR
Definition: xmlstorage.h:181
HRESULT Skip([in] ULONG celt)
INetSharingPublicConnectionCollection EnumPublicConnections([in] SHARINGCONNECTION_ENUM_FLAGS Flags)
char string[160]
Definition: util.h:11
tagNETCON_CHARACTERISTIC_FLAGS
Definition: netcon.idl:35
GLuint in
Definition: glext.h:9616
static unsigned char pointer_default
Definition: parser.tab.c:114
unsigned short USHORT
Definition: pedump.c:61
HRESULT GetUiObjectClassId([out, ref] CLSID *pclsid)
SHARINGCONNECTIONTYPE SharingConnectionType
HRESULT EnableSharing([in] SHARINGCONNECTIONTYPE Type)
INetConnectionProps NetConnectionProps([in] INetConnection pNetConnection)
HRESULT Delete()
NETCON_STATUS
Definition: netcon.h:37
unsigned int ULONG
Definition: retypes.h:1
GLenum GLuint id
Definition: glext.h:5579
HRESULT Skip([in] ULONG celt)
HRESULT RemovePortMapping([in] INetSharingPortMapping *pMapping)
HRESULT Next([in] ULONG celt, [out, size_is(celt), length_is(*pceltFetched)] VARIANT *rgVar, [out] ULONG *pceltFetched)
HRESULT Connect()
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
WCHAR * LPWSTR
Definition: xmlstorage.h:184
enum INetSharingConfiguration::tagSHARINGCONNECTIONTYPE * LPSHARINGCONNECTIONTYPE
HRESULT Next([in] ULONG celt, [out, size_is(celt), length_is(*pCeltFetched)] VARIANT *rgVar, [out] ULONG *pCeltFetched)
void * object
Definition: jmemsys.h:48
HRESULT Duplicate([in, string] LPCWSTR pszwDuplicateName, [out] INetConnection **ppCon)
f_args fa
Definition: format.c:280