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.
Özellik, filtre veya pin gibi bir çekirdek akış nesnesine ait bir yetenek veya denetim durumu ayarını temsil eder. Çekirdek akış minidriver istemcileri, minidriver'ın oluşturduğu filtrelere ve pinlere alma ve ayarlama özellik istekleri (KSPROPERTY_TYPE_GET ve KSPROPERTY_TYPE_SET) gönderebilir. bir grup ilgili özellik, özellik kümesi olarak adlandırılır.
Tek tek özellikleri almak veya ayarlamak için kullanıcı modu istemcileri, dwIoControlCode parametresi IOCTL_KS_PROPERTY olarak ayarlanmış olan DeviceIoControl Win32 işlevini çağırır. DeviceIoControl , Microsoft Windows SDK belgelerinde açıklanmıştır. Çekirdek modu istemcileri KsSynchronousDeviceControl çağırmalıdır.
Giriş arabelleği ya bir KSPROPERTY yapısı ya da bir KSPROPERTY yapısını ve istekle ilgili diğer bilgileri içeren bir wrapper'dır. Bu çağrıya yanıt olarak, işletim sistemi sınıf sürücüsüne bir IRP atar.
Sınıf sürücüsü sonuçta elde edilen IRP'yi aldığında KsPropertyHandler'ı çağırır. Sınıf sürücüsü, özellik isteğinin ayrıntılarını tanımlayan KSPROPERTY yapısının adresini bir çağrı parametresi olarak içerir. Özellik isteği, sınıf sürücüsü düzeyinde veya minidriver tarafından sağlanan bir işleyici tarafından otomatik olarak işlenir. Hangi özellik kümelerinin sınıf sürücüsü tarafından işlendiği ve hangi kümelerin minidriver tarafından sağlanan işleyicilere ihtiyaç duyduğu gibi başvuru bilgileri için Çekirdek Akış Özellik Kümeleri bölümüne bakın. Bir mini sürücü, sınıf sürücüsü tarafından varsayılan olarak işlenen bir özellik için geri çağırmalar sağlayarak sınıf sürücüsü işleyicisini geçersiz kılabilir veya genişletebilir.
Minidriver bu özellik için işleyiciler sağladıysa, KsPropertyHandler isteği uygun minidriver tarafından sağlanan geri çağırma işlevine devreder.
Minidriver, KSPROPERTY_ITEM türünde bir yapıda özellik desteği geri çağrıları için işaretçiler sağlar. Minidriver, bir KSPROPERTY_SET yapısında ilgili KSPROPERTY_ITEM yapılarından oluşan bir diziyi gruplandırır. Farklı sınıf sürücüsü modellerinin, özellik kümesi verilerini sınıf sürücüsü için kullanılabilir hale getirmek için minidriver için biraz farklı yöntemleri vardır. Çekirdek Akışı'ndaki bağlantıları izleyerek sınıf sürücüsüne özgü bilgileri bulabilirsiniz.
Minidriver, bir KSPROPERTY_ITEM yapısındaki KSPROPERTY_VALUES yapısına yönelik bir işaretçi de sağlar. KSPROPERTY_VALUES yapısı, bir dizi KSPROPERTY_MEMBERSLIST yapısı içerir. Burası, minidriver'ın özelliği için kabul edilebilir değerlerin boyutunu ve türünü belirttiği yerdir. Her KSPROPERTY_MEMBERSLIST yapısı bir üst bilgi üyesi içerir: minidriver'ınızın desteklediği bir özellik için yasal aralıkları veya değerleri belirtme hakkında bilgi için bkz. KSPROPERTY_MEMBERSHEADER . Bu mekanizmanın bir uygulamasını Microsoft Windows Driver Kit'teki (WDK) Testcap örneğinde de bulabilirsiniz.
Bir özelliğin kabul edilebilir değerlerinin boyutunu ve türünü raporlamak için, sınıf sürücüsü istemciden gelen KSPROPERTY_TYPE_BASICSUPPORT isteğine yanıt olarak KSPROPERTY_DESCRIPTION bir yapı döndürür.
Sınıf sürücüsü, KSPROPERTY_DESCRIPTION yapısına KSPROPERTY_MEMBERSHEADER yapıların listesini ekleyebilir.