使用网络监视器工具 - Windows drivers

使用网络监视器工具 - Windows drivers

网络监视器工具(NetMon.exe)是基于 Windows 的存档应用程序,可用于查看来自 WPD 组件的跟踪。 网络监视器工具已替换 WpdMon.exe。

安装和配置 NetMon.exe

若要安装和配置网络监视器工具,请完成以下步骤:

下载并安装 NetMon.exe。

下载并安装 Windows 驱动程序工具包(WDK)。

在开发计算机上安装 WPD 分析程序,方法是使用管理员权限启动 Powershell.exe 实例并运行以下命令序列。

PowerShell -ExecutionPolicy 远程签名

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 分析器包含在 Windows 驱动程序工具包(WDK)中。

使用“工具/选项”对话框配置 NetMon.exe 选项:

在“ 常规 ”选项卡中,选择“ 框架摘要”框中的“使用固定宽度字体 ”。

在“颜色规则”选项卡中,选择“打开”,然后选择。C:\Program Files (x86)\Windows Kits\10\Tools\10.0.22621.0\x86\Network Monitor Parsers\wpd\wpd.nmcr 选择“ 打开”,后跟 “确定”。

完成这些步骤后, NetMon.exe 即可检查 WPD 跟踪文件。 按照“收集跟踪”部分中的说明进行操作。

收集痕迹

若要生成跟踪,请创建命令脚本。 将以下内容复制到文本文件,并使用.cmd文件扩展名保存该文件。

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

创建命令文件后,请从管理员模式命令提示符运行它。

如果使用示例命令文件的内容,则跟踪将存储在文件wpd_trace.etl 中。

查看踪迹

若要查看跟踪,请启动 NetMon.exe,选择 “文件/打开/捕获 ”菜单,然后打开收集的 wpd_trace.etl 文件。 打开跟踪文件时,NetMon.exe 会在各层次显示跟踪:

WPDAPI – 使用 WPD 命令和响应显示来自 WPD API 级别的信息

WPDMTP – 使用 MTP 命令和响应显示媒体传输协议 (MTP) 级别的信息

传输(WPDMTPUS 或 WPDMTPIP 或 WPDMTPBT) - 显示传输级别数据包

下图显示了 API 级别的 WPDAPI 请求。 该请求以到达传输的 MTP 请求的形式通过 WPDMTP 传输,然后弹出。

传输级日志记录不会在数据阶段记录实际数据。 检查在 GetDeviceInfo 或 SendObjectPropList 等命令期间发送或接收的数据集的 WPDMTP 响应消息。

如果在 “帧摘要 ”窗口中选择 WPDMTP 响应行,则相应的项在 “帧详细信息 ”窗口中展开。

在 “帧详细信息 ”窗口中选择“+”以进一步展开并浏览。 如果 MTP 操作具有数据阶段,则从设备接收到的数据集可在 WPDMTP 响应项的 DataSetOfDataPhase 字段下获取。

可以选择展开项,并查看 “帧详细信息 ”窗口显示 WPD/MTP 友好消息。 编写 WPD 分析器时遵循的约定是,你可以在标头级别查看详细信息的摘要。 例如,在 GetServiceCapabilities 调用中, DataSetOfDataPhase 字段旁边显示该数据集中的格式数。

可以在“框架摘要”窗口中删除“源”和“目标”列以提高清晰度

在“框架详细信息”窗口中选择字段时,“十六进制详细信息”窗口中突出显示相应的值。

使用 NetMon.exe 进行筛选

网络监视器工具提供了多种筛选功能。

若要仅显示 MTP 跟踪,请在“显示筛选器”窗口中输入!wpdmtp并选择“应用”。

若要筛选驱动程序返回错误的情况:

在“显示筛选器”窗口中输入 wpderror != 0,然后选择“应用”。

您可以筛选出某个特定场景下的所有方法调用。 例如,以下筛选器将检索对 GetServiceProperties 的所有调用:

WPDMTP.CorrespondingCommand.MTPOpcode == 0x9304

同样,以下筛选器将检索相同的方法调用:

WPDMTP.CorrespondingCommand.MTPOpcode == MTP_OPCODE_GETSERVICEPROPERTIES

📚 相关推荐

8尺等于多少厘米?
北海365最新房屋出租

8尺等于多少厘米?

📅 07-18 👁️ 3769
六小龄童一直无缘春晚,上次数万网友请愿都未果,原因都在这里
蚬的做法
北海365最新房屋出租

蚬的做法

📅 08-01 👁️ 2993
什么是WAN(广域网)?LAN vs. WAN。
365bet.com官方网站

什么是WAN(广域网)?LAN vs. WAN。

📅 09-04 👁️ 625
LOL王者段位有多少人
365bet.com官方网站

LOL王者段位有多少人

📅 10-11 👁️ 373
电脑电源的寿命一般多少?
北海365最新房屋出租

电脑电源的寿命一般多少?

📅 09-12 👁️ 3319
web加载失败如何处理
北海365最新房屋出租

web加载失败如何处理

📅 08-04 👁️ 3452
2025世俱杯臂章设计揭秘,彰显足球荣耀与文化!
2020年,50%的搜索用语音完成?用户究竟如何使用语音搜索
北海365最新房屋出租

2020年,50%的搜索用语音完成?用户究竟如何使用语音搜索

📅 07-23 👁️ 9626