33typedef struct
44{
55 const INetCfgComponent * lpVtbl ;
6- const INetCfgComponentBindings * lpVtblComponentBindings ;
6+ const INetCfgComponentBindings * lpVtblBindings ;
7+ const INetCfgComponentPrivate * lpVtblPrivate ;
78 LONG ref ;
89 NetCfgComponentItem * pItem ;
910 INetCfgComponentPropertyUi * pProperty ;
@@ -21,9 +22,13 @@ typedef struct
2122
2223static __inline INetCfgComponentImpl * impl_from_INetCfgComponentBindings (INetCfgComponentBindings * iface )
2324{
24- return (INetCfgComponentImpl * )((char * )iface - FIELD_OFFSET (INetCfgComponentImpl , lpVtblComponentBindings ));
25+ return (INetCfgComponentImpl * )((char * )iface - FIELD_OFFSET (INetCfgComponentImpl , lpVtblBindings ));
2526}
2627
28+ static __inline INetCfgComponentImpl * impl_from_INetCfgComponentPrivate (INetCfgComponentPrivate * iface )
29+ {
30+ return (INetCfgComponentImpl * )((char * )iface - FIELD_OFFSET (INetCfgComponentImpl , lpVtblPrivate ));
31+ }
2732
2833/***************************************************************
2934 * INetCfgComponentBindings
@@ -179,6 +184,59 @@ static const INetCfgComponentBindingsVtbl vt_NetCfgComponentBindings =
179184 INetCfgComponentBindings_fnMoveAfter ,
180185};
181186
187+ /***************************************************************
188+ * INetCfgComponentPrivate
189+ */
190+
191+ HRESULT
192+ WINAPI
193+ INetCfgComponentPrivate_fnQueryInterface (
194+ INetCfgComponentPrivate * iface ,
195+ REFIID iid ,
196+ LPVOID * ppvObj )
197+ {
198+ INetCfgComponentImpl * This = impl_from_INetCfgComponentPrivate (iface );
199+ return INetCfgComponent_QueryInterface ((INetCfgComponent * )This , iid , ppvObj );
200+ }
201+
202+ ULONG
203+ WINAPI
204+ INetCfgComponentPrivate_fnAddRef (
205+ INetCfgComponentPrivate * iface )
206+ {
207+ INetCfgComponentImpl * This = impl_from_INetCfgComponentPrivate (iface );
208+ return INetCfgComponent_AddRef ((INetCfgComponent * )This );
209+ }
210+
211+ ULONG
212+ WINAPI
213+ INetCfgComponentPrivate_fnRelease (
214+ INetCfgComponentPrivate * iface )
215+ {
216+ INetCfgComponentImpl * This = impl_from_INetCfgComponentPrivate (iface );
217+ return INetCfgComponent_Release ((INetCfgComponent * )This );
218+ }
219+
220+ HRESULT
221+ WINAPI
222+ INetCfgComponentPrivate_fnUnknown1 (
223+ INetCfgComponentPrivate * iface ,
224+ DWORD dwParam1 ,
225+ DWORD dwParam2 )
226+ {
227+ // INetCfgComponentImpl *This = impl_from_INetCfgComponentPrivate(iface);
228+ ERR ("INetCfgComponentPrivate_fnUnknown1(%p %lx %lx)\n" , iface , dwParam1 , dwParam2 );
229+ return S_OK ;
230+ }
231+
232+ static const INetCfgComponentPrivateVtbl vt_NetCfgComponentPrivate =
233+ {
234+ INetCfgComponentPrivate_fnQueryInterface ,
235+ INetCfgComponentPrivate_fnAddRef ,
236+ INetCfgComponentPrivate_fnRelease ,
237+ INetCfgComponentPrivate_fnUnknown1 ,
238+ };
239+
182240/***************************************************************
183241 * INetCfgComponent
184242 */
@@ -202,10 +260,17 @@ INetCfgComponent_fnQueryInterface(
202260 }
203261 else if (IsEqualIID (iid , & IID_INetCfgComponentBindings ))
204262 {
205- * ppvObj = (LPVOID )& This -> lpVtblComponentBindings ;
263+ * ppvObj = (LPVOID )& This -> lpVtblBindings ;
206264 INetCfgComponentBindings_AddRef (iface );
207265 return S_OK ;
208266 }
267+ else if (IsEqualIID (iid , & IID_INetCfgComponentPrivate ))
268+ {
269+ TRACE ("IID_INetCfgComponentPrivate\n" );
270+ * ppvObj = (LPVOID )& This -> lpVtblPrivate ;
271+ INetCfgComponentPrivate_AddRef (iface );
272+ return S_OK ;
273+ }
209274
210275 return E_NOINTERFACE ;
211276}
@@ -693,7 +758,8 @@ INetCfgComponent_Constructor (IUnknown * pUnkOuter, REFIID riid, LPVOID * ppv, N
693758
694759 This -> ref = 1 ;
695760 This -> lpVtbl = (const INetCfgComponent * )& vt_NetCfgComponent ;
696- This -> lpVtblComponentBindings = (const INetCfgComponentBindings * )& vt_NetCfgComponentBindings ;
761+ This -> lpVtblBindings = (const INetCfgComponentBindings * )& vt_NetCfgComponentBindings ;
762+ This -> lpVtblPrivate = (const INetCfgComponentPrivate * )& vt_NetCfgComponentPrivate ;
697763 This -> pProperty = NULL ;
698764 This -> pItem = pItem ;
699765 This -> pNCfg = pNCfg ;
0 commit comments