6 #define WIN32_NO_STATUS
16 #include <dll/devmgr/devmgr.h>
20 extern HINSTANCE hDllInstance
;
22 ULONG
DbgPrint(PCCH Format
,...);
24 typedef INT_PTR (WINAPI
*PPROPERTYSHEETW
)(LPCPROPSHEETHEADERW
);
25 typedef HPROPSHEETPAGE (WINAPI
*PCREATEPROPERTYSHEETPAGEW
)(LPCPROPSHEETPAGEW
);
26 typedef BOOL (WINAPI
*PDESTROYPROPERTYSHEETPAGE
)(HPROPSHEETPAGE
);
28 typedef struct _DEVADVPROP_INFO
32 WNDPROC ParentOldWndProc
;
35 HDEVINFO DeviceInfoSet
;
36 SP_DEVINFO_DATA DeviceInfoData
;
37 HDEVINFO CurrentDeviceInfoSet
;
38 SP_DEVINFO_DATA CurrentDeviceInfoData
;
39 DEVINST ParentDevInst
;
41 LPCWSTR lpMachineName
;
44 PCREATEPROPERTYSHEETPAGEW pCreatePropertySheetPageW
;
45 PDESTROYPROPERTYSHEETPAGE pDestroyPropertySheetPage
;
47 DWORD PropertySheetType
;
49 HPROPSHEETPAGE
*DevPropSheets
;
57 UINT FreeDevPropSheets
: 1;
59 UINT DeviceStarted
: 1;
60 UINT DeviceUsageChanged
: 1;
61 UINT CloseDevInst
: 1;
63 UINT DoDefaultDevAction
: 1;
64 UINT PageInitialized
: 1;
65 UINT ShowRemotePages
: 1;
66 UINT HasDriverPage
: 1;
67 UINT HasResourcePage
: 1;
68 UINT HasPowerPage
: 1;
75 /* struct may be dynamically expanded here! */
76 } DEVADVPROP_INFO
, *PDEVADVPROP_INFO
;
79 typedef struct _ENUMDRIVERFILES_CONTEXT
81 HWND hDriversListView
;
83 } ENUMDRIVERFILES_CONTEXT
, *PENUMDRIVERFILES_CONTEXT
;
85 #define PM_INITIALIZE (WM_APP + 0x101)
93 ResourcesProcDriverDlgProc(IN HWND hwndDlg
,
101 DisplayDeviceAdvancedProperties(IN HWND hWndParent
,
102 IN LPCWSTR lpDeviceID OPTIONAL
,
103 IN HDEVINFO DeviceInfoSet
,
104 IN PSP_DEVINFO_DATA DeviceInfoData
,
105 IN HINSTANCE hComCtl32
,
106 IN LPCWSTR lpMachineName
,
112 ShowDeviceProblemWizard(IN HWND hWndParent OPTIONAL
,
113 IN HDEVINFO hDevInfo
,
114 IN PSP_DEVINFO_DATA DevInfoData
,
115 IN HMACHINE hMachine OPTIONAL
);
121 LengthOfStrResource(IN HINSTANCE hInst
,
125 LoadAndFormatString(IN HINSTANCE hInstance
,
127 OUT LPWSTR
*lpTarget
,
131 LoadAndFormatStringsCat(IN HINSTANCE hInstance
,
134 OUT LPWSTR
*lpTarget
,
138 ListViewGetSelectedItemData(IN HWND hwnd
);
141 ConvertMultiByteToUnicode(IN LPCSTR lpMultiByteStr
,
145 LoadAndInitComctl32(VOID
);
148 GetDeviceManufacturerString(IN HDEVINFO DeviceInfoSet
,
149 IN PSP_DEVINFO_DATA DeviceInfoData
,
151 IN DWORD BufferSize
);
154 GetDeviceLocationString(IN HDEVINFO DeviceInfoSet
,
155 IN PSP_DEVINFO_DATA DeviceInfoData
,
156 IN DEVINST dnParentDevInst OPTIONAL
,
158 IN DWORD BufferSize
);
161 GetDeviceStatusString(IN DEVINST DevInst
,
162 IN HMACHINE hMachine
,
164 IN DWORD BufferSize
);
167 GetDriverProviderString(IN HDEVINFO DeviceInfoSet
,
168 IN PSP_DEVINFO_DATA DeviceInfoData
,
170 IN DWORD BufferSize
);
173 GetDriverVersionString(IN HDEVINFO DeviceInfoSet
,
174 IN PSP_DEVINFO_DATA DeviceInfoData
,
176 IN DWORD BufferSize
);
179 GetDriverDateString(IN HDEVINFO DeviceInfoSet
,
180 IN PSP_DEVINFO_DATA DeviceInfoData
,
182 IN DWORD BufferSize
);
185 IsDeviceHidden(IN DEVINST DevInst
,
186 IN HMACHINE hMachine
,
190 IsDriverInstalled(IN DEVINST DevInst
,
191 IN HMACHINE hMachine
,
192 OUT BOOL
*Installed
);
195 CanDisableDevice(IN DEVINST DevInst
,
196 IN HMACHINE hMachine
,
197 OUT BOOL
*CanDisable
);
200 IsDeviceStarted(IN DEVINST DevInst
,
201 IN HMACHINE hMachine
,
202 OUT BOOL
*IsStarted
);
205 EnableDevice(IN HDEVINFO DeviceInfoSet
,
206 IN PSP_DEVINFO_DATA DevInfoData OPTIONAL
,
208 IN DWORD HardwareProfile OPTIONAL
,
209 OUT BOOL
*bNeedReboot OPTIONAL
);
212 GetDeviceTypeString(IN PSP_DEVINFO_DATA DeviceInfoData
,
214 IN DWORD BufferSize
);
217 GetDeviceDescriptionString(IN HDEVINFO DeviceInfoSet
,
218 IN PSP_DEVINFO_DATA DeviceInfoData
,
220 IN DWORD BufferSize
);
223 FindCurrentDriver(IN HDEVINFO DeviceInfoSet
,
224 IN PSP_DEVINFO_DATA DeviceInfoData
,
225 OUT PSP_DRVINFO_DATA DriverInfoData
);
227 #endif /* __DEVMGR_H */