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.
Ağ İzleyicisi aracı (NetMon.exe), WPD bileşenlerinden gelen izlemeleri görüntülemek için kullanabileceğiniz arşivlenmiş bir Windows tabanlı uygulamadır. Ağ İzleyicisi aracı WpdMon.exe'nin yerini aldı.
NetMon.exe yükleme ve yapılandırma
Ağ İzleyicisi aracını yüklemek ve yapılandırmak için şu adımları tamamlayın:
NetMon.exeindirip yükleyin.
Windows Sürücü Seti'ni (WDK) indirin ve yükleyin.
Yönetici izinlerine sahip bir Powershell.exe örneği başlatıp aşağıdaki komut dizisini çalıştırarak geliştirme makinenize WPD ayrıştırıcılarını yükleyin.
PowerShell -ExecutionPolicy Uzaktan İmzalı
cd C:\Program Files (x86)\Windows Kits\10\Tools\10.0.22621.0\x86\Network Monitor Parsers\usb
..\NplAutoProfile.ps1
cd ..\wpd
..\NplAutoProfile.ps1
WPD ayrıştırıcıları Windows Sürücü Seti'ne (WDK) dahil edilir.
Araçlar/Seçenekler iletişim kutusunu kullanarak NetMon.exe seçeneklerini yapılandırın:
- Genel sekmesinde Çerçeve Özeti 'nde sabit genişlikli yazı tipini kullan seçin.
-
Renk Kuralları sekmesinde Aç'ı ve ardından
C:\Program Files (x86)\Windows Kits\10\Tools\10.0.22621.0\x86\Network Monitor Parsers\wpd\wpd.nmcr
öğesini seçin. Aç'ı, ardından Tamam'ı seçin.
Bu adımları tamamladıktan sonra NetMon.exe WPD izleme dosyalarını incelemeye hazırdır. İzlemeleri toplama bölümündeki yönergeleri izleyin.
İzleri toplama
İzlemeler oluşturmak için bir komut betiği oluşturun. Aşağıdakileri bir metin dosyasına kopyalayın ve .cmd dosya adı uzantısıyla kaydedin.
echo off
@REM ---------------------------------------------------------------------------------------
@REM UNCOMMENT THE LOGMAN COMMANDS FOR THE FOLLOWING PROVIDERS AS REQUIRED
@REM Microsoft-Windows-WPD-API To log API traffic
@REM Microsoft-Windows-WPD-MTPClassDriver To log MTP command, response and datasets
@REM Microsoft-Windows-WPD-MTPUS To log USB traffic at WpdMtpUS layer
@REM Microsoft-Windows-WPD-MTPIP To log IP traffic at WpdMtpIP layer
@REM Microsoft-Windows-WPD-MTPBT To log BT traffic at WpdMtpBt layer
@REM Microsoft-Windows-USB-USBPORT To log USB core layer traffic
@REM Microsoft-Windows-USB-USBHUB To log USB core layer traffic
@REM ---------------------------------------------------------------------------------------
@REM Start Logging
logman start -ets WPD -p Microsoft-Windows-WPD-API -bs 100 -nb 128 640 -o wpd_trace.etl
logman update -ets WPD -p Microsoft-Windows-WPD-MTPClassDriver -bs 100 -nb 128 640
logman update -ets WPD -p Microsoft-Windows-WPD-MTPUS -bs 100 -nb 128 640
logman update -ets WPD -p Microsoft-Windows-WPD-MTPIP -bs 100 -nb 128 640
logman update -ets WPD -p Microsoft-Windows-WPD-MTPBT -bs 100 -nb 128 640
logman update -ets WPD -p Microsoft-Windows-USB-USBPORT -bs 100 -nb 128 640
logman update -ets WPD -p Microsoft-Windows-USB-USBHUB -bs 100 -nb 128 640
logman update -ets WPD -p Microsoft-Windows-Kernel-IoTrace 0 2
echo.
echo Please run your scenario now and
pause
@REM Stop logging
logman stop -ets WPD
Komut dosyasını oluşturduktan sonra, bir Yönetici modu komut isteminden çalıştırın.
Örnek komut dosyasının içeriğini kullandıysanız, izlemeleriniz wpd_trace.etl dosyasında depolanır.
İzlemeleri görüntüleme
İzlemelerinizi görüntülemek için NetMon.exebaşlatın, Dosya/Aç/Yakala menüsünü seçin ve toplanan wpd_trace.etl dosyasını açın. İzleme dosyasını açtığınızda, NetMon.exe izlemeleri çeşitli katmanlarda görüntüler:
- WPDAPI – WPD komutları ve yanıtları ile WPD API düzeyinden bilgileri görüntüler
- WPDMTP – MTP komutları ve yanıtları ile Medya Aktarım Protokolü (MTP) düzeyindeki bilgileri görüntüler
- Aktarım (WPDMTPUS veya WPDMTPIP veya WPDMTPBT) – Aktarım düzeyi paketlerini gösterir
Aşağıdaki görüntüde API düzeyinde bir WPDAPI isteği gösterilmektedir. İstek, WPDMTP üzerinden bir aktarıma ulaşan ve ardından kabarcık oluşturan MTP istekleri biçiminde hareket eder.
- Aktarım düzeyi günlük kaydı, veri aşamasında gerçek verileri günlüğe kaydetmez. GetDeviceInfo veya SendObjectPropListgibi komutlar sırasında gönderilen veya alınan veri kümeleri için WPDMTP Yanıt iletisini inceleyin.
- Çerçeve Özeti penceresinde bir WPDMTP Yanıt satırı seçerseniz, ilgili öğe Çerçeve Ayrıntıları penceresinde genişler.
- Daha fazla genişletmek ve keşfetmek için Çerçeve Ayrıntıları penceresindeki "+"ları seçin. Bir MTP işleminin bir veri aşaması varsa, cihazdan alınan veri kümesi WPDMTP Yanıt öğesinin DataSetOfDataPhase alanında erişilebilir.
- Öğeleri genişletmeyi seçebilir ve Çerçeve Ayrıntıları penceresinde WPD/MTP uyumlu iletilerin görüntülendiğini görebilirsiniz. WPD ayrıştırıcılarını yazarken izlenen kural, üst bilgi düzeyinde ayrıntıların özetini görebilmenizi sağlar. Örneğin, GetServiceCapabilities çağrısında DataSetOfDataPhase alanı yanında, bu veri kümesindeki biçimlerin sayısını gösterir.
- Netliği artırmak için Kaynak ve Hedef sütunlarını Çerçeve Özeti penceresinde kaldırabilirsiniz
- Çerçeve Detayları penceresinde bir alan seçtiğinizde, karşılık gelen değer Hex Detayları penceresinde vurgulanır.
NetMon.exe ile filtreleme
Ağ İzleyicisi aracı çeşitli filtreleme özellikleri sağlar.
Yalnızca MTP izlemelerini göstermek için Filtreyi Görüntüle penceresine girin
!wpdmtp
ve Uygula'yı seçin.Sürücünün hata döndürdüğü durumları filtrelemek için:
- wpderror != 0 ifadesini Görüntüleme Filtresi penceresine girin ve Uygula'yı seçin.
Belirli bir senaryo için tüm yöntem çağrılarını filtreleyebilirsiniz. Örneğin, aşağıdaki filtre GetServiceProperties'e yapılan tüm çağrıları alır:
WPDMTP. CorrespondingCommand.MTPOpcode == 0x9304
Benzer şekilde, aşağıdaki filtre aynı yöntem çağrılarını alır:
WPDMTP. CorrespondingCommand.MTPOpcode == MTP_OPCODE_GETSERVICEPROPERTIES