Udostępnij przez


Różne zestawy reguł (KMDF)

Użyj tych reguł, aby sprawdzić, czy sterownik spełnia ogólny zestaw wymagań dotyczących prawidłowej obsługi obiektów i kluczy, oraz czy nie wykonuje wywołań do interfejsów DDI, które są nieodpowiednie dla sterownika nie-PnP lub sterownika innego niż FDO, który nie zarządza zasadami zarządzania energią.

W tym dziale

Temat Opis

AccessHardwareKey

Reguła AccessHardwareKey określa, że sterownik magistrali nie powinien próbować uzyskać dostępu do klucza sprzętowego urządzenia podrzędnego z EvtChildListCreateDevice.

AddPdotoStaticChildlist

Reguła AddPdotoStaticChildlist określa, że dla urządzenia PDO funkcja struktury WdfFdoAddStaticChild musi być wywołana po tym, jak sterownik pomyślnie wywoła WdfPdoInitAllocate i WdfDeviceCreate.

ChildListConfiguration

Reguła ChildListConfiguration określa, że sterowniki obsługujące wyliczenie dynamiczne muszą wywołać polecenie WdfFdoInitSetDefaultChildListConfig przed wywołaniem funkcji WdfDeviceCreate .

Cleanup4CtlDeviceRegistered

Reguła Cleanup4CtlDeviceRegistered określa, że jeśli sterownik Plug and Play (PnP) wywołuje funkcję WdfDeviceCreate dla obiektu urządzenia sterującego, sterownik musi zarejestrować jedną z wymaganych funkcji wywołania zwrotnego zdarzeń.

NonFDONotPowerPolicyOwnerAPI

Reguła NonFDONotPowerPolicyOwnerAPI określa, że jeśli sterownik inny niż FDO nie jest właścicielem zasad zasilania, nie można wywołać niektórych interfejsów DDI.

NonPnPDrvPowerPolicyOwnerAPI

Reguła NonPnPDrvPowerPolicyOwnerAPI określa, że sterowniki nie-PnP nie mogą wywoływać niektórych DDIs związanych z zarządzaniem energią.

UnSafeAllocatePool

Reguła UnSafeAllocatePool jest ważną regułą zabezpieczeń, która sprawdza, czy sterownik nie używa przestarzałych identyfikatorów DDI do przydzielania pamięci.

Aby wybrać zestaw reguł Miscellaneous

  1. Wybierz projekt sterownika (.vcxProj) w programie Microsoft Visual Studio. W menu sterowników kliknij Uruchom Weryfikator Sterowników Statycznych….

  2. Kliknij kartę Reguły . W obszarze Zestawy reguł wybierz pozycję Różne.

    Aby wybrać domyślny zestaw reguł w oknie wiersza polecenia dla deweloperów programu Visual Studio, określ Miscellaneous.sdv z opcją /check. Przykład:

    msbuild /t:sdv /p:Inputs="/check:Miscellaneous.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
    

    Aby uzyskać więcej informacji, zobacz Użycie Static Driver Verifier do Znalezienia Defektów w Sterownikach oraz Polecenia Static Driver Verifier (MSBuild).