Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Sürücünüzün WDM DDI'lerini doğru kullandığını doğrulamak için bu kuralları kullanın.
Bu bölümde
| Konu | Açıklama |
|---|---|
DebugBreakUsage kuralı, sürücünün DbgBreakPoint veya DbgBreakPointWithStatus'u çağırmaması gerektiğini belirtir. Bu kural yalnızca sürücünün hata ayıklama olmayan bir sürümünü oluştururken geçerlidir. |
|
DoubleFetch kuralı, kullanıcı modu bellek işaretçilerinden çift getirme işlemini denetler. Kullanıcı modu belleğine çift çekirdek modunda erişim, yarış durumu nedeniyle bir güvenlik sorununa yol açabilir. Kullanıcı modu verilerine erişirken çekirdek modu kodunun kullanıcı modu verilerinin yerel olarak bir kopyasını alması ve kullanıcı modu verilerine birden çok kez erişmesini önlemesi gerekir. Bunun başarısız olması, verilere ilk erişildikten sonra değişebileceği "çift getirme" olarak bilinen bir sorun türüyle sonuçlanır. |
|
NullCheck kuralı, sürücü kodundaki bir NULL değerin sürücüde daha sonra başvurulmadığını doğrular. Bu kural, bu koşullardan biri doğruysa bir hata bildirir:
NullCheck kuralı ihlalleriyle, en ilgili kod deyimleri izleme ağacı bölmesinde vurgulanır. Rapor çıkışıyla çalışma hakkında daha fazla bilgi için bkz. Statik Sürücü Doğrulayıcı Raporu ve İzleme Görüntüleyicisi'ni Anlama. |
|
SafeStrings kuralı, sürücünün yalnızca sistemi yanlışlıkla veya kötü amaçlı yetkisiz erişime karşı koruyan dize işleme işlevlerini çağırdığını belirtir. Sürücüler için bu güvenli dize işlevleri Ntstrsafe.h içinde tanımlanır. |
|
EskiDDIs kuralı, sürücülerin FsRtlPrivateLock çağırmaması gerektiğini belirtir. Bu işlev kullanımdan kaldırıldı. Bunun yerine FsRtlFastLock kullanın. |
DDI kullanım kuralı kümesini seçmek için
Microsoft Visual Studio'da sürücü projenizi (.vcxProj) seçin. Sürücüsü menüsünde tıklayın, Statik Sürücü Doğrulayıcıyı Başlat....
Kurallar sekmesine tıklayın. Kural Kümeleri'nin altında DDIUsage'ı seçin.
Visual Studio geliştirici komut istemi penceresinden varsayılan kural kümesini seçmek için /check seçeneğiyle DDIUsage.sdv belirtin. Örneğin:
msbuild /t:sdv /p:Inputs="/check:DDIUsage.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32Daha fazla bilgi için Sürücülerdeki Hataları Bulmak için Statik Sürücü Doğrulayıcı Kullanma ve Statik Sürücü Doğrulayıcı Komutları (MSBuild)bölümüne bakın.