Moved internal context macros out of winnt.h.
[wine] / dlls / setupapi / devinst.c
1 /*
2  * SetupAPI device installer
3  *
4  * Copyright 2000 Andreas Mohr for Codeweavers
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Lesser General Public License for more details.
15  *
16  * You should have received a copy of the GNU Lesser General Public
17  * License along with this library; if not, write to the Free Software
18  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19  */
20
21 #include "windef.h"
22 #include "winbase.h"
23 #include "setupx16.h"
24 #include "wine/debug.h"
25 #include "setupapi.h"
26
27 WINE_DEFAULT_DEBUG_CHANNEL(setupapi);
28
29 /***********************************************************************
30  *              DiGetClassDevs (SETUPX.304)
31  * Return a list of installed system devices.
32  * Uses HKLM\\ENUM to list devices.
33  */
34 RETERR16 WINAPI DiGetClassDevs16(LPLPDEVICE_INFO16 lplpdi,
35                                  LPCSTR lpszClassName, HWND16 hwndParent, INT16 iFlags)
36 {
37     LPDEVICE_INFO16 lpdi;
38
39     FIXME("(%p, '%s', %04x, %04x), semi-stub.\n",
40           lplpdi, lpszClassName, hwndParent, iFlags);
41     lpdi = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, sizeof(DEVICE_INFO16));
42     lpdi->cbSize = sizeof(DEVICE_INFO16);
43     *lplpdi = lpdi;
44     return OK;
45 }
46
47 /***********************************************************************
48  *              SetupDiGetDeviceInterfaceDetailA (SETUPAPI.@)
49  */
50 BOOL WINAPI SetupDiGetDeviceInterfaceDetailA(
51       HDEVINFO DeviceInfoSet,
52       PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
53       PSP_DEVICE_INTERFACE_DETAIL_DATAA DeviceInterfaceDetailData,
54       DWORD DeviceInterfaceDetailDataSize,
55       PDWORD RequiredSize,
56       PSP_DEVINFO_DATA DeviceInfoData )
57 {
58     FIXME("\n");
59     return FALSE;
60 }
61
62 /***********************************************************************
63  *              SetupDiGetDeviceInterfaceDetailW (SETUPAPI.@)
64  */
65 BOOL WINAPI SetupDiGetDeviceInterfaceDetailW(
66       HDEVINFO DeviceInfoSet,
67       PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData,
68       PSP_DEVICE_INTERFACE_DETAIL_DATAW DeviceInterfaceDetailData,
69       DWORD DeviceInterfaceDetailDataSize,
70       PDWORD RequiredSize,
71       PSP_DEVINFO_DATA DeviceInfoData )
72 {
73     FIXME("\n");
74     return FALSE;
75 }
76
77 /***********************************************************************
78  *              SetupDiEnumDeviceInterfaces (SETUPAPI.@)
79  */
80 BOOL WINAPI SetupDiEnumDeviceInterfaces(
81        HDEVINFO DeviceInfoSet,
82        PSP_DEVINFO_DATA DeviceInfoData,
83        CONST GUID * InterfaceClassGuid,
84        DWORD MemberIndex,
85        PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData)
86 {
87     FIXME("\n");
88     return FALSE;
89 }
90
91 /***********************************************************************
92  *              SetupDiGetClassDevsA (SETUPAPI.@)
93  */
94 HDEVINFO WINAPI SetupDiGetClassDevsA(
95        CONST GUID *class,
96        LPCSTR enumstr,
97        HWND parent,
98        DWORD flags)
99 {
100     FIXME("%s %s %04x %08lx\n",debugstr_guid(class),enumstr,parent,flags);
101
102     return NULL;
103 }
104
105 /***********************************************************************
106  *              SetupDiEnumDeviceInfo (SETUPAPI.@)
107  */
108 BOOL WINAPI SetupDiEnumDeviceInfo(
109         HDEVINFO  devinfo,
110         DWORD  index,
111         PSP_DEVINFO_DATA info)
112 {
113     FIXME("%p %ld %p\n", devinfo, index, info );
114
115     if(info==NULL)
116         return FALSE;
117     if(info->cbSize < sizeof *info)
118         return FALSE;
119
120     return FALSE;
121 }
122
123 /***********************************************************************
124  *              SetupDiDestroyDeviceInfoList (SETUPAPI.@)
125  */
126 BOOL WINAPI SetupDiDestroyDeviceInfoList( HDEVINFO devinfo )
127 {
128     FIXME("%04lx\n", (DWORD)devinfo);
129     return FALSE;
130 }
131
132 /***********************************************************************
133  *              SetupDiGetDeviceRegistryPropertyA (SETUPAPI.@)
134  */
135 BOOL WINAPI SetupDiGetDeviceRegistryPropertyA(
136         HDEVINFO  devinfo,
137         PSP_DEVINFO_DATA  DeviceInfoData,
138         DWORD   Property,
139         PDWORD  PropertyRegDataType,
140         PBYTE   PropertyBuffer,
141         DWORD   PropertyBufferSize,
142         PDWORD  RequiredSize)
143 {
144     FIXME("%04lx %p %ld %p %p %ld %p\n", (DWORD)devinfo, DeviceInfoData,
145         Property, PropertyRegDataType, PropertyBuffer, PropertyBufferSize,
146         RequiredSize);
147     return FALSE;
148 }
149