📄 netcfgx.idl
字号:
[
local,
object,
uuid(C0E8AE96-306E-11D1-AACF-00805FC1270E),
pointer_default(unique)
]
interface INetCfgBindingPath : IUnknown
{
HRESULT IsSamePathAs (
[in] INetCfgBindingPath* pPath);
HRESULT IsSubPathOf (
[in] INetCfgBindingPath* pPath);
HRESULT IsEnabled ();
HRESULT Enable (
[in] BOOL fEnable);
HRESULT GetPathToken(
[out, string] LPWSTR* ppszwPathToken);
HRESULT GetOwner (
[out] INetCfgComponent** ppComponent);
HRESULT GetDepth (
[out] ULONG* pcInterfaces);
HRESULT EnumBindingInterfaces (
[out] IEnumNetCfgBindingInterface** ppenumInterface);
};
//+---------------------------------------------------------------------------
// INetCfgClass -
[
local,
object,
uuid(C0E8AE97-306E-11D1-AACF-00805FC1270E),
pointer_default(unique)
]
interface INetCfgClass : IUnknown
{
HRESULT FindComponent (
[in, string] LPCWSTR pszwInfId,
[out] INetCfgComponent** ppnccItem);
HRESULT EnumComponents (
[out] IEnumNetCfgComponent** ppenumComponent);
};
//+---------------------------------------------------------------------------
// INetCfgClassSetup -
[
local,
object,
uuid(C0E8AE9D-306E-11D1-AACF-00805FC1270E),
pointer_default(unique)
]
interface INetCfgClassSetup : IUnknown
{
typedef enum tagOBO_TOKEN_TYPE
{
OBO_USER = 1,
OBO_COMPONENT = 2,
OBO_SOFTWARE = 3,
} OBO_TOKEN_TYPE;
typedef struct tagOBO_TOKEN
{
OBO_TOKEN_TYPE Type;
// Type == OBO_COMPONENT
//
INetCfgComponent* pncc;
// Type == OBO_SOFTWARE
//
LPCWSTR pszwManufacturer;
LPCWSTR pszwProduct;
LPCWSTR pszwDisplayName;
// The following fields must be initialized to zero
// by users of OBO_TOKEN.
//
BOOL fRegistered;
} OBO_TOKEN;
HRESULT SelectAndInstall (
[in] HWND hwndParent,
[in] OBO_TOKEN* pOboToken,
[out] INetCfgComponent** ppnccItem);
HRESULT Install (
[in, string] LPCWSTR pszwInfId,
[in] OBO_TOKEN* pOboToken,
[in] DWORD dwSetupFlags,
[in] DWORD dwUpgradeFromBuildNo,
[in, string] LPCWSTR pszwAnswerFile,
[in, string] LPCWSTR pszwAnswerSections,
[out] INetCfgComponent** ppnccItem);
HRESULT DeInstall (
[in] INetCfgComponent* pComponent,
[in] OBO_TOKEN* pOboToken,
[out] LPWSTR* pmszwRefs);
};
//+---------------------------------------------------------------------------
// INetCfgComponent -
[
local,
object,
uuid(C0E8AE99-306E-11D1-AACF-00805FC1270E),
pointer_default(unique)
]
interface INetCfgComponent : IUnknown
{
typedef enum tagCOMPONENT_CHARACTERISTICS
{
NCF_VIRTUAL = 0x00000001,
NCF_SOFTWARE_ENUMERATED = 0x00000002,
NCF_PHYSICAL = 0x00000004,
NCF_HIDDEN = 0x00000008,
NCF_NO_SERVICE = 0x00000010,
NCF_NOT_USER_REMOVABLE = 0x00000020,
NCF_MULTIPORT_INSTANCED_ADAPTER = 0x00000040, // This adapter has separate instances for each port
NCF_HAS_UI = 0x00000080,
NCF_SINGLE_INSTANCE = 0x00000100,
// = 0x00000200, // filter device
NCF_FILTER = 0x00000400, // filter component
NCF_DONTEXPOSELOWER = 0x00001000,
NCF_HIDE_BINDING = 0x00002000, // don't show in binding page
NCF_NDIS_PROTOCOL = 0x00004000, // Needs UNLOAD notifications
// = 0x00008000,
// = 0x00010000, // pnp notifications forced through service controller
NCF_FIXED_BINDING = 0x00020000 // UI ability to change binding is disabled
} COMPONENT_CHARACTERISTICS;
typedef enum tagNCRP_FLAGS
{
NCRP_QUERY_PROPERTY_UI = 0x00000001,
NCRP_SHOW_PROPERTY_UI = 0x00000002
} NCRP_FLAGS;
HRESULT GetDisplayName (
[out, string] LPWSTR* ppszwDisplayName);
HRESULT SetDisplayName (
[in, string] LPCWSTR pszwDisplayName);
HRESULT GetHelpText (
[out, string] LPWSTR* pszwHelpText);
HRESULT GetId (
[out, string] LPWSTR* ppszwId);
HRESULT GetCharacteristics (
[out] LPDWORD pdwCharacteristics);
HRESULT GetInstanceGuid (
[out] GUID* pGuid);
HRESULT GetPnpDevNodeId (
[out, string] LPWSTR* ppszwDevNodeId);
HRESULT GetClassGuid (
[out] GUID* pGuid);
HRESULT GetBindName (
[out, string] LPWSTR* ppszwBindName);
HRESULT GetDeviceStatus (
[out] ULONG* pulStatus);
HRESULT OpenParamKey (
[out] HKEY* phkey);
HRESULT RaisePropertyUi (
[in] HWND hwndParent,
[in] DWORD dwFlags, /* NCRP_FLAGS */
[in] IUnknown* punkContext);
};
//+---------------------------------------------------------------------------
// INetCfgComponentBindings -
[
local,
object,
uuid(C0E8AE9E-306E-11D1-AACF-00805FC1270E),
pointer_default(unique)
]
interface INetCfgComponentBindings : IUnknown
{
typedef enum tagSUPPORTS_BINDING_INTERFACE_FLAGS
{
NCF_LOWER = 0x01,
NCF_UPPER = 0x02
} SUPPORTS_BINDING_INTERFACE_FLAGS;
typedef enum tagENUM_BINDING_PATHS_FLAGS
{
EBP_ABOVE = 0x01,
EBP_BELOW = 0x02,
} ENUM_BINDING_PATHS_FLAGS;
HRESULT BindTo (
[in] INetCfgComponent* pnccItem);
HRESULT UnbindFrom (
[in] INetCfgComponent* pnccItem);
HRESULT SupportsBindingInterface (
[in] DWORD dwFlags,
[in] LPCWSTR pszwInterfaceName);
HRESULT IsBoundTo (
[in] INetCfgComponent* pnccItem);
HRESULT IsBindableTo (
[in] INetCfgComponent* pnccItem);
HRESULT EnumBindingPaths (
[in] DWORD dwFlags,
[out] IEnumNetCfgBindingPath** ppIEnum);
HRESULT MoveBefore (
[in] INetCfgBindingPath* pncbItemSrc,
[in] INetCfgBindingPath* pncbItemDest);
HRESULT MoveAfter (
[in] INetCfgBindingPath* pncbItemSrc,
[in] INetCfgBindingPath* pncbItemDest);
};
//+---------------------------------------------------------------------------
// INetCfgSysPrep -
[
local,
object,
uuid(C0E8AE98-306E-11D1-AACF-00805FC1270E),
pointer_default(unique)
]
interface INetCfgSysPrep : IUnknown
{
HRESULT HrSetupSetFirstDword(
[in, string] LPCWSTR pwszSection,
[in, string] LPCWSTR pwszKey,
[in] DWORD dwValue);
HRESULT HrSetupSetFirstString(
[in, string] LPCWSTR pwszSection,
[in, string] LPCWSTR pwszKey,
[in, string] LPCWSTR pwszValue);
HRESULT HrSetupSetFirstStringAsBool(
[in, string] LPCWSTR pwszSection,
[in, string] LPCWSTR pwszKey,
[in] BOOL fValue);
HRESULT HrSetupSetFirstMultiSzField(
[in, string] LPCWSTR pwszSection,
[in, string] LPCWSTR pwszKey,
[in] LPCWSTR pmszValue);
};
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -