[NETCFGX]
[reactos.git] / reactos / dll / win32 / netcfgx / precomp.h
1 #ifndef _PRECOMP_H__
2 #define _PRECOMP_H__
3
4 #include <stdio.h>
5
6 #define WIN32_NO_STATUS
7 #define _INC_WINDOWS
8 #define COM_NO_WINDOWS_H
9
10 #define COBJMACROS
11 #define NONAMELESSUNION
12 #define NONAMELESSSTRUCT
13
14 #include <windef.h>
15 #include <winbase.h>
16 #include <winreg.h>
17 #include <objbase.h>
18 #include <netcfgx.h>
19 #include <setupapi.h>
20 #include <netcfgn.h>
21 #include <devguid.h>
22 #include <commctrl.h>
23
24 #include "resource.h"
25
26 typedef HRESULT (CALLBACK *LPFNCREATEINSTANCE)(IUnknown* pUnkOuter, REFIID riid, LPVOID* ppvObject);
27 typedef struct {
28 REFIID riid;
29 LPFNCREATEINSTANCE lpfnCI;
30 } INTERFACE_TABLE;
31
32 typedef struct tagNetCfgComponentItem
33 {
34 LPWSTR szDisplayName; //Y
35 LPWSTR szHelpText; //Y
36 LPWSTR szId; //Y
37 LPWSTR szBindName; //Y
38 LPWSTR szNodeId; //Y
39 CLSID InstanceId; //Y
40 CLSID ClassGUID; //Y
41 DWORD dwCharacteristics; //Y
42 ULONG Status; //Y
43 BOOL bChanged; //Y
44 struct tagNetCfgComponentItem * pNext;
45 INetCfgComponentControl * pNCCC;
46 }NetCfgComponentItem;
47
48 /* netcfg_iface.c */
49 HRESULT WINAPI INetCfg_Constructor (IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv);
50
51 /* classfactory.c */
52 IClassFactory * IClassFactory_fnConstructor(LPFNCREATEINSTANCE lpfnCI, PLONG pcRefDll, REFIID riidInst);
53
54 /* globals */
55 extern HINSTANCE netcfgx_hInstance;
56
57 /* inetcfgcomp_iface.c */
58 HRESULT WINAPI INetCfgComponent_Constructor (IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv, NetCfgComponentItem * pItem,INetCfg * iface);
59 HRESULT WINAPI IEnumNetCfgComponent_Constructor (IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv, NetCfgComponentItem * pItem, INetCfg * iface);
60
61 /* tcpipconf_notify.c */
62 HRESULT WINAPI TcpipConfigNotify_Constructor (IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv);
63
64 extern const GUID CLSID_TcpipConfigNotifyObject;
65
66 #endif /* _PRECOMP_H__ */