У меня есть драйвер шины kmdf PCI\VEN_XXXX&DEV_XXXX, который создает два статически пронумерованных PDO с серийными номерами: 217 и 218; по одному на каждый порт Ethernet. Идентификатор оборудования PDO — ROOT\MY_NIC_PORT, поэтому я могу установить на них драйвер NDIS Miniport.
Водитель автобуса проходит СДВ и Верификатор; но при перезагрузке перечисляются еще два PDO. При следующей перезагрузке я получаю повторяющийся сбой pdo.
В примере с тостером GUID класса устройства использовался как часть идентификатора оборудования. Когда я попытался, мои сетевые порты больше не отображались в диспетчере устройств.
Будут оценены любые предложения по отладке или обходные пути?
pnpCaps.LockSupported = WdfFalse;
pnpCaps.EjectSupported = WdfTrue;
pnpCaps.Removable = WdfTrue;
pnpCaps.DockDevice = WdfFalse;
pnpCaps.UniqueID = WdfTrue;
pnpCaps.SilentInstall = WdfTrue;
pnpCaps.SurpriseRemovalOK = WdfTrue;
pnpCaps.HardwareDisabled = WdfFalse;
pnpCaps.NoDisplayInUI = WdfFalse;
pnpCaps.Address = SerialNo;
pnpCaps.UINumber = SerialNo;
************************************************************
Driver Verifier detected violation:
A driver has enumerated two child PDO's that returned identical Device
ID's.
CulpritAddress = FFFFF8025ED309C4, DeviceObject1 = FFFFE3882FB2F300,
DeviceObject2 = FFFFE3882EBF88D0.
************************************************************