Modello INF NDIS remoto
Microsoft fornisce un driver miniport NDIS, Rndismp.sys, che implementa il set di messaggi NDIS remoto e comunica con driver di trasporto bus generici, che a loro volta comunicano con il driver del bus appropriato. Questo driver miniport NDIS viene implementato e gestito da Microsoft ed è distribuito come parte di tutte le versioni di Windows supportate. È possibile trovarlo nella directory %SystemRoot%\System32\drivers.
Per usare il driver NDIS remoto con un dispositivo USB, un IHV deve fornire un file INF in base a uno dei modelli seguenti:
- Modello INF RNDIS per NDIS 5.1 (Windows XP e versioni successive)
- Modello INF RNDIS per NDIS 6.0 (Windows 7 e versioni successive)
Modello INF RNDIS per NDIS 5.1 (Windows XP e versioni successive)
; Remote NDIS template device setup file
; Copyright (c) Microsoft Corporation
;
; This is the template for the INF installation script
; for the RNDIS-over-USB host driver.
; This INF works for Windows XP SP2, Windows XP x64,
; Windows Server 2003 SP1 x86, x64, and ia64, and
; Windows Vista x86 and x64.
; This INF will work with Windows XP, Windows XP SP1,
; and Windows 2003 after applying specific hotfixes.
[Version]
Signature = "$Windows NT$"
Class = Net
ClassGUID = {4d36e972-e325-11ce-bfc1-08002be10318}
Provider = %Microsoft%
DriverVer = 06/21/2006,6.0.6000.16384
;CatalogFile = device.cat
PnpLockdown = 1
[Manufacturer]
%Microsoft% = RndisDevices,NTx86,NTamd64,NTia64
; Decoration for x86 architecture
[RndisDevices.NTx86]
%RndisDevice% = RNDIS.NT.5.1, USB\VID_xxxx&PID_yyyy
; Decoration for x64 architecture
[RndisDevices.NTamd64]
%RndisDevice% = RNDIS.NT.5.1, USB\VID_xxxx&PID_yyyy
; Decoration for ia64 architecture
[RndisDevices.NTia64]
%RndisDevice% = RNDIS.NT.5.1, USB\VID_xxxx&PID_yyyy
;@@@ This is the common setting for setup
[ControlFlags]
ExcludeFromSelect=*
; DDInstall section
; References the in-build Netrndis.inf
[RNDIS.NT.5.1]
Characteristics = 0x84 ; NCF_PHYSICAL + NCF_HAS_UI
BusType = 15
; NEVER REMOVE THE FOLLOWING REFERENCE FOR NETRNDIS.INF
include = netrndis.inf
needs = Usb_Rndis.ndi
AddReg = Rndis_AddReg_Vista
; DDInstal.Services section
[RNDIS.NT.5.1.Services]
include = netrndis.inf
needs = Usb_Rndis.ndi.Services
; Optional registry settings. You can modify as needed.
[RNDIS_AddReg_Vista]
HKR, NDI\params\VistaProperty, ParamDesc, 0, %Vista_Property%
HKR, NDI\params\VistaProperty, type, 0, "edit"
HKR, NDI\params\VistaProperty, LimitText, 0, "12"
HKR, NDI\params\VistaProperty, UpperCase, 0, "1"
HKR, NDI\params\VistaProperty, default, 0, " "
HKR, NDI\params\VistaProperty, optional, 0, "1"
; No sys copyfiles - the sys files are already in-build
; (part of the operating system).
; Modify these strings for your device as needed.
[Strings]
Microsoft = "Microsoft Corporation"
RndisDevice = "Remote NDIS based Device"
Vista_Property = "Optional Vista Property"
Modello INF RNDIS per NDIS 6.0 (Windows 7 e versioni successive)
; Remote NDIS template device setup file
; Copyright (c) Microsoft Corporation
;
; This is the template for the INF installation script for the RNDIS-over-USB
; host driver that leverages the newer NDIS 6.x miniport (rndismp6.sys) for
; improved performance. This INF works for Windows 7, Windows Server 2008 R2,
; and later operating systems on x86, amd64 and ia64 platforms.
[Version]
Signature = "$Windows NT$"
Class = Net
ClassGUID = {4d36e972-e325-11ce-bfc1-08002be10318}
Provider = %Microsoft%
DriverVer = 07/21/2008,6.0.6000.16384
;CatalogFile = device.cat
PnpLockdown = 1
[Manufacturer]
%Microsoft% = RndisDevices,NTx86,NTamd64,NTia64
; Decoration for x86 architecture
[RndisDevices.NTx86]
%RndisDevice% = RNDIS.NT.6.0, USB\VID_xxxx&PID_yyyy
; Decoration for x64 architecture
[RndisDevices.NTamd64]
%RndisDevice% = RNDIS.NT.6.0, USB\VID_xxxx&PID_yyyy
; Decoration for ia64 architecture
[RndisDevices.NTia64]
%RndisDevice% = RNDIS.NT.6.0, USB\VID_xxxx&PID_yyyy
;@@@ This is the common setting for setup
[ControlFlags]
ExcludeFromSelect=*
; DDInstall section
; References the in-build Netrndis.inf
[RNDIS.NT.6.0]
Characteristics = 0x84 ; NCF_PHYSICAL + NCF_HAS_UI
BusType = 15
; NEVER REMOVE THE FOLLOWING REFERENCE FOR NETRNDIS.INF
include = netrndis.inf
needs = usbrndis6.ndi
AddReg = Rndis_AddReg
*IfType = 6 ; IF_TYPE_ETHERNET_CSMACD.
*MediaType = 16 ; NdisMediumNative802_11
*PhysicalMediaType = 14 ; NdisPhysicalMedium802_3
; DDInstal.Services section
[RNDIS.NT.6.0.Services]
include = netrndis.inf
needs = usbrndis6.ndi.Services
; Optional registry settings. You can modify as needed.
[RNDIS_AddReg]
HKR, NDI\params\RndisProperty, ParamDesc, 0, %Rndis_Property%
HKR, NDI\params\RndisProperty, type, 0, "edit"
HKR, NDI\params\RndisProperty, LimitText, 0, "12"
HKR, NDI\params\RndisProperty, UpperCase, 0, "1"
HKR, NDI\params\RndisProperty, default, 0, " "
HKR, NDI\params\RndisProperty, optional, 0, "1"
; No sys copyfiles - the sys files are already in-build
; (part of the operating system).
; Modify these strings for your device as needed.
[Strings]
Microsoft = "Microsoft Corporation"
RndisDevice = "Remote NDIS6 based Device"
Rndis_Property = "Optional RNDIS Property"