//+--------------------------------------------------------------------------- // // Microsoft Windows // Copyright (C) Microsoft Corporation, 1999. // // File: C L A S S I N S T . H // // Contents: Defines the interface between the binding engine and the // network class installer. // // Notes: // // Author: billbe 15 Jan 1999 // //---------------------------------------------------------------------------- #pragma once #include "comp.h" #include "install.h" #include "ncsetup.h" #include struct COMPONENT_INSTALL_INFO { NETCLASS Class; PCWSTR pszInfId; PCWSTR pszInfFile; HWND hwndParent; GUID InstanceGuid; BOOL fPreviouslyInstalled; DWORD dwCharacter; PCWSTR pszSectionName; PCWSTR pszDescription; PCWSTR pszPnpId; HDEVINFO hdi; PSP_DEVINFO_DATA pdeid; INTERFACE_TYPE BusType; BOOL fRemoteBoot; }; HRESULT HrCiGetClassAndInfFileOfInfId ( IN PCWSTR pszInfId, OUT NETCLASS* pClass, OUT PWSTR pszInfFile); // Must be _MAX_PATH long HRESULT HrCiIsInstalledComponent( IN COMPONENT_INSTALL_INFO* pcii, OUT HKEY* phkey); HRESULT HrCiInstallComponent ( IN const COMPONENT_INSTALL_PARAMS& Params, OUT CComponent** ppComponent, OUT DWORD* pdwNewCharacter); HRESULT HrCiInstallFilterDevice ( IN HDEVINFO hdi, IN PCWSTR pszInfId, IN CComponent* pAdapter, IN CComponent* pFilter, IN class CFilterDevice** ppFilterDevice); HRESULT HrCiInstallFromInfSection( IN HINF hinfFile, IN PCWSTR pszInfSectionName, IN HKEY hkeyRelative, IN HWND hwndParent, IN DWORD dwInstallFlags); HRESULT HrCiRemoveComponent ( IN const CComponent* pComponent, OUT tstring* pstrRemoveSection OPTIONAL); HRESULT HrCiRemoveFilterDevice ( IN HDEVINFO hdi, IN SP_DEVINFO_DATA* pdeid); HRESULT HrCiPrepareSelectDeviceDialog( IN HDEVINFO hdi, IN PSP_DEVINFO_DATA pdeid); HRESULT HrCiRemoveNonEnumeratedComponent ( IN HINF hinf, IN HKEY hkeyInstance, IN NETCLASS eClass, IN const GUID& InstanceGuid); HRESULT HrCiGetDriverInfo ( IN HDEVINFO hdi, IN OUT PSP_DEVINFO_DATA pdeid, IN const GUID& guidClass, IN PCWSTR pszInfId, IN PCWSTR pszInfFile OPTIONAL); HRESULT HrCiGetDriverDetail( IN HDEVINFO hdi, IN PSP_DEVINFO_DATA pdeid, OUT PSP_DRVINFO_DATA pdrid, OUT PSP_DRVINFO_DETAIL_DATA* ppdridd); HRESULT HrCiSelectComponent( IN NETCLASS Class, IN HWND hwndParent, IN const CI_FILTER_INFO* pcfi, OUT COMPONENT_INSTALL_PARAMS** ppParams); HRESULT HrCiInstallComponentInternal( IN OUT COMPONENT_INSTALL_INFO* pcii);