找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
楼主: ctx

[教程] 基于WdiWiFi(Win10)的无线驱动修改支持Win7示例

 荐 [复制链接]
发表于 2026-8-24 11:05:34 | 显示全部楼层
老大,请问怎么安装,直接安装带签名的显示39报错。

点评

ctx
另帖回复。  发表于 2026-8-26 10:23
回复

使用道具 举报

发表于 2026-9-14 00:07:03 | 显示全部楼层
辛苦了,内容详细,收藏了。
回复

使用道具 举报

发表于 2026-9-14 00:22:21 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 前天 22:38 来自手机 | 显示全部楼层
对了大佬,关于i217/i218/i219的win7驱动移植给vista,在windbg里又该用什么指令分析并修改不支持的函数呢?

点评

ctx
在vista桌面环境先用dependency walker查询不支持函数,解决掉它们,然后尝试安装和运行。出现错误代码的话,根据错误代码进行针对性下断分析。例如代码39是IAT没有处理完毕,代码37是DriverEntry失败,代码10是处理  详情 回复 发表于 前天 23:09
回复

使用道具 举报

 楼主| 发表于 前天 23:09 来自手机 | 显示全部楼层
本帖最后由 ctx 于 2026-9-25 23:23 编辑
MC魔方哥 发表于 2026-9-25 22:38
对了大佬,关于i217/i218/i219的win7驱动移植给vista,在windbg里又该用什么指令分析并修改不支持的函数呢 ...


在vista桌面环境先用dependency walker查询不支持函数,解决掉它们,然后尝试安装和运行。出现错误代码的话,根据错误代码进行针对性下断分析。例如代码39是IAT没有处理完毕,代码37是DriverEntry失败,代码10是处理IRP_MJ_PNP/IRP_MN_START_DEVICE失败(InitializeHandlerEx回调函数失败)。
windbg动态分析前,如有条件,要拿IDA先分析驱动sys,搞清各去入口函数,更有利于找准调试断点。
建议看一下这里,是自顶向下分析的起始点,参数(如请求的ndis版本号)填不合适肯定先37。
https://learn.microsoft.com/zh-cn/windows-hardware/drivers/ddi/ndis/nf-ndis-ndismregisterminiportdriver
最难分析的是不报错、不蓝屏、功能异常的问题。例如i219驱动移植win7时,第一次遇到的是发包不正常(检验字节填00问题),这就需要从SendNetBufferListsHandler回调函数入手分析,先摸清它的处理逻辑,找到关键位置下断点分析。后来又遇到重新插拔网线速率协商异常问题,通过日志分析+调试,才找出原因加以解决。
再补充一下驱动加载和设备运行的顺序,了解各错误代码可能出现的次序:
1.设备注册表找到服务,加载其sys——IAT不合适代码39,数字签名不合适代码52,服务禁用代码38
2.sys执行DriverEntry——失败代码37或3
3.调用sys的AddDevice——失败代码31
4.发送IRP_MJ_PNP/IRP_MN_FILTER_RESOURCE_REQUIREMENTS——资源分配失败代码12
5.发送IRP_MJ_PNP/IRP_MN_START_DEVICE——启动设备失败代码10
6.发送IRP_MJ_PNP/IRP_MN_QUERY_DEVICE_STATE——反馈失败结果代码43
设备管理器错误代码在DDK和nt5src里都有定义。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1|闽公网安备35020302032614号 )

GMT+8, 2026-9-27 02:01

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表