126 lines
3 KiB
C
126 lines
3 KiB
C
|
//+---------------------------------------------------------------------------
|
||
|
//
|
||
|
// 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 <ntioapi.h>
|
||
|
|
||
|
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);
|
||
|
|
||
|
|