当前位置: 首页 > news >正文

驱动开发错误汇编

本博文将会不定期更新。以便记录我的驱动开发生涯中的一些点点滴滴的技术细节和琐事。

1. link阶段找不到导出函数

比如"LNK2019 无法解析的外部符号 _FltCreateCommunicationPort@32"。

出现这种情况的原因是,驱动的编译环境忽略了所有的默认库,但是像"FltMgr.lib"等内核库也被忽略,因此在文件中添加"#pragma comment(lib,“FltMgr.lib”)"也是无效的,只能在”属性->链接->输入->附加依赖项“中,手动添加需要的内核lib库。

2. minifilter驱动的安装

FltRegisterFilter函数参数检查合法,但是返回STATUS_OBJECT_NAME_NOT_FOUND,原因是安装驱动时注册表下缺少Instance等项。
在这里插入图片描述

其中Instances下的键值如下:

在这里插入图片描述
xxx Instance下的键值如下:
在这里插入图片描述

详细说明见:https://blog.csdn.net/lionzl/article/details/40709827

https://bbs.kanxue.com/thread-262815.htm

https://stackoverflow.com/questions/42389211/fltregisterfilter-not-working

3. minifilter驱动的卸载

fltmc load xxx:加载驱动
fltmc unload xxx:卸载驱动
前提条件是FltRegisterFilter调用时,FLT_REGISTRATION中未指定FLTFL_REGISTRATION_DO_NOT_SUPPORT_SERVICE_STOP。否则,驱动无论如何都不支持卸载。

4. 驱动程序的启动方式

驱动安装时若指定启动方式为SERVICE_BOOT_START,CreateService返回错误码是87。
解决方案:把驱动文件复制到C:\Windows\System32\Drivers目录,然后安装即可成功。

5. minifilter回调函数的返回值

typedef enum _FLT_PREOP_CALLBACK_STATUS {FLT_PREOP_SUCCESS_WITH_CALLBACK,FLT_PREOP_SUCCESS_NO_CALLBACK,FLT_PREOP_PENDING,FLT_PREOP_DISALLOW_FASTIO,FLT_PREOP_COMPLETE,FLT_PREOP_SYNCHRONIZE,FLT_PREOP_DISALLOW_FSFILTER_IO} FLT_PREOP_CALLBACK_STATUS, *PFLT_PREOP_CALLBACK_STATUS;

上述枚举类型的含义在如下链接:
https://www.cnblogs.com/blck/p/15557931.html

6. 头文件包含错误

在 Windows Vista WDK 之前,用于驱动程序开发的主要头文件为 Wdm.h、Ntddk.h 和 Ntifs.h,它们包含很多重复声明。

从 Windows Vista 版本的 WDK 开始,Wdm.h、Ntddk.h 和 Ntifs.h 将按层次结构来组织并且不包含重复信息。上层的文件将包含下层的文件。每个函数和结构声明仅出现一次。

Ntifs.h 包含 Ntddk.h,而 Ntddk.h 又包含 Wdm.h。因此,如果同时出现wdm.h, ntddk.h ,ntifs.h会发生编译错误。

在这里插入图片描述

相关文章:

驱动开发错误汇编

本博文将会不定期更新。以便记录我的驱动开发生涯中的一些点点滴滴的技术细节和琐事。 1. link阶段找不到导出函数 比如"LNK2019 无法解析的外部符号 _FltCreateCommunicationPort32"。 出现这种情况的原因是,驱动的编译环境忽略了所有的默认库&#x…...

知识图谱项目实践

目录 步骤 SpaCy Textacy——Text Analysis for Cybersecurity Networkx Dateparser 导入库 写出页面的名称 ​编辑 自然语言处理 词性标注 可能标记的完整列表 依存句法分析(Dependency Parsing,DEP) 可能的标签完整列表 实例理…...

stable diffusion实践操作-提示词-人物属性

系列文章目录 stable diffusion实践操作-提示词 文章目录 系列文章目录前言一、提示词汇总1.1 人物属性11.2 人物属性2 前言 本文主要收纳总结了提示词-人物属性。 一、提示词汇总 1.1 人物属性1 角色类型人物身材胸部头发-发型头发-发色[女仆][霊烏路空][大腿][乳房][呆毛…...

RabbitMQ的安装和配置

将RabbitMQ文件夹传到linux根目录 开启管理界面及配置...

WebRTC 日志

WebRTC 日志 flyfish WebRTC支持的日志等级 // // The meanings of the levels are: // LS_VERBOSE: This level is for data which we do not want to appear in the // normal debug log, but should appear in diagnostic logs. // LS_INFO: Chatty level used in de…...

【python爬虫】16.爬虫知识点总结复习

文章目录 前言爬虫总复习工具解析与提取(一)解析与提取(二)更厉害的请求存储更多的爬虫更强大的爬虫——框架给爬虫加上翅膀 爬虫进阶路线指引解析与提取 存储数据分析与可视化更多的爬虫更强大的爬虫——框架项目训练 反爬虫应对…...

Windows系统中Apache Http服务器简单使用

1 简介 Apache HTTP服务器是一个开源的、跨平台的Web服务器软件。它由Apache软件基金会开发和维护。Apache HTTP服务器可以在多种操作系统上运行,如Windows、Linux、Unix等,并且支持多种编程语言和技术,如PHP、Perl、Python、Java等。…...

Django ORM 框架中的表关系,你真的弄懂了吗?

Django ORM 框架中的表关系 为了说清楚问题,我们设计一个 crm 系统,包含五张表: 1.tb_student 学生表 2.tb_student_detail 学生详情表 3.tb_salesman 课程顾问表 4.tb_course 课程表 5.tb_entry 报名表 表关系和字段如下图&#xff1a…...

第五课:C++实现加密PDF文档解密

请注意,未经授权的加密PDF文件解密是非法的,本文仅为学术和研究目的提供参考。 打开加密的PDF文件并获取密钥 在C++中,可以使用pdfium库打开加密的PDF文件。使用pdfium库中的FPDF_LoadCustomDocument函数可以打开具有自定义访问权限的加密文件。该函数接受一个IFX_FileRead*…...

罗马数字转整数

罗马数字转整数 题目: 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M …...

processflow流程图多人协作预热

前言 在线上办公如火如荼的今天,多人协作功能是每个应用绕不开的门槛。processflow在线流程图(前身基于drawio二次开发)沉寂两年之久,经过长时间设计开发,调整,最终完成了多人协作的核心模块设计。废话不多…...

PCL点云处理之快速计算多个点到同一直线的距离(二百零五)

PCL点云处理之快速计算多个点到同一直线的距离(二百零五) 一、算法简介二、具体实现1.代码2.结果一、算法简介 点到直线的距离计算,是一种常用的算法,在点云处理中,经常遇到需要计算多个点云到同一条直线的距离计算需求,此时若是逐点计算将耗费大量的时间,熟悉点到直线…...

xxl-job 任务调度搭建及简单使用

xxl-job是开源架构,可以通过它实现调度中心和执行器。 git地址和 官网中进行了详细的技术说明。   xxl-job支持单机部署和集群式部署,在集群式部署中又可以实现调度中心集群式部署和执行器集群式部署。本文主要针对调度中心和执行器分离单机部署方式进…...

mysql数据库使用技巧整理

查看当前数据库已建立的client连接 > SHOW VARIABLES LIKE max_connections; -- 查看数据库允许的最大连接数,不是实时正在使用的连接数 > SHOW STATUS LIKE Threads_connected; -- 查看当前数据库client的连接数 > SHOW PROCESSLIST; -- 查看具体的连接...

车规微控制器的ECC机制及EMU外设

车规微控制器的ECC机制及EMU外设 文章目录 车规微控制器的ECC机制及EMU外设引言ECC的基本原理ECC RAM的访问方式ECC RAM的初始化SRAM ECC错误注入及EMU外设Flash ECC校验参考文献 引言 ECC是微控制器系统中,用于保障信息安全的常用机制,主要是避免存储设…...

Less的强大变量用法

less中的变量应用十分强大,可以灵活的应用到各种不同需求的场景。 一,属性值变量 声明:sass声明变量是用$符号,而less声明变量是用符号 作用域:也区分为全局变量和局部变量,如果引用的变量有定义局部变量&…...

【相机标定】opencv python 标定相机内参时不计算 k3 畸变参数

文章目录 1. 背景2. 完整的 opencv python 标定相机内参过程3. 选择是否计算畸变参数 k3 1. 背景 畸变参数 k3 通常用于描述径向畸变的更高阶效应,即在需要高精度的应用中可以用到,一般的应用中 k1, k2 足矣。 常见的应用中, orbslam3 中是否…...

html 标签简介

概述 标签的效果不重要,重要的是标签的语义。 文本标签 文本标签用于包裹:词汇、短语等。排版标签,比如div,p,h1等。排版标签更宏观(大段的文字),文本标签更微观(词汇、短语)。文…...

dos汇编总结

前言: 计组课本需要学习汇编,可惜自己看不太懂。这里发现一个学习方法交给大家。其实新手可能一些抽象表示难理解,这里我把我学习的疑问点以及思路记录一下。 要点: 这里我以题为例给大家分析 输出输入对应大写字母的小写字母 …...

四川玖璨电子商务有限公司:短视频有什么运营

根据短视频有什么运营,短视频的拍摄工具多种多样。无论是在手机上拍摄还是使用专业摄影设备,拍摄短视频的目的都是为了吸引观众的注意力和提升内容的质量。从小花费到高投入,在不断发展的短视频行业中,拍摄方法也得到了不断创新和…...

别再傻傻分不清了!用大白话和Python代码讲透PID控制与阻抗控制的区别(附机器人动力学关联)

从开车到推门:用Python代码拆解PID与阻抗控制的本质差异 想象一下你正在驾驶一辆汽车。当你发现车速低于预期时,会本能地加深油门;而当车速过快时,又会自然松开踏板——这种基于误差不断调整的行为,正是PID控制的朴素体…...

质因数分解

题面 给定整数 a,b,如果 a%b0,则称 b 是 a 的因数。 现在给定一个整数 n,计算整数 n 的阶乘的因数个数。 输入格式: 一行输入一个整数 n(1≤n≤50)。 输出格式: 输出一个整数,表示 n! 的因数个数。 输入样例: 5 输出样例:…...

ESP32-S3 + OV5640摄像头实战:用SD卡模块做个离线拍照盒(附完整代码)

ESP32-S3 OV5640摄像头实战:打造智能离线拍照盒的完整指南 在创客和硬件爱好者的世界里,将高性能硬件与实用功能相结合的项目总是令人兴奋。ESP32-S3搭配OV5640摄像头就是一个绝佳组合,能够实现高质量的图像采集和处理。本文将带你从零开始&…...

Qwen3.5-2B多场景落地:跨境电商独立站商品图→多语言标题+卖点文案+SEO关键词

Qwen3.5-2B多场景落地:跨境电商独立站商品图→多语言标题卖点文案SEO关键词 1. 跨境电商内容创作的痛点与机遇 跨境电商独立站运营者每天面临三大内容挑战: 商品图片处理:需要专业摄影和后期,成本高周期长多语言文案创作&#…...

璀璨星河在艺术教育落地:中小学美育课AI创作教学案例

璀璨星河在艺术教育落地:中小学美育课AI创作教学案例 1. 引言:当AI艺术遇见美育课堂 在传统的美术课堂上,老师常常面临这样的困境:学生艺术基础参差不齐,创作工具有限,很多有创意的想法难以实现。而今天&…...

Phi-3-mini-4k-instruct-gguf实战教程:集成到Notion插件实现笔记自动摘要

Phi-3-mini-4k-instruct-gguf实战教程:集成到Notion插件实现笔记自动摘要 1. 项目背景与目标 你是否经常在Notion中积累了大量笔记,却苦于没有时间整理和提炼关键信息?本文将带你一步步将Phi-3-mini-4k-instruct-gguf模型集成到Notion插件中…...

文脉定序从零部署:Ubuntu+Docker+NVIDIA驱动环境下BGE重排序搭建

文脉定序从零部署:UbuntuDockerNVIDIA驱动环境下BGE重排序搭建 1. 引言:为什么你的搜索结果总是不对? 你有没有遇到过这种情况?在公司的知识库里搜索一个问题,系统确实返回了一大堆文档,但最相关、最能解…...

Wan2.2-I2V-A14B Anaconda虚拟环境管理:隔离依赖与复现实验

Wan2.2-I2V-A14B Anaconda虚拟环境管理:隔离依赖与复现实验 1. 为什么需要虚拟环境 在AI项目开发中,依赖管理是个让人头疼的问题。想象一下这样的场景:你花了两周时间调试好的模型,换台机器就跑不起来了;或者更新了某…...

Asian Beauty Z-Image Turbo 学术研究工具链:从MATLAB数据分析到AI图像生成

Asian Beauty Z-Image Turbo 学术研究工具链:从MATLAB数据分析到AI图像生成 1. 引言 如果你做过科研,或者写过技术论文,一定有过这样的经历:辛辛苦苦用MATLAB跑完仿真、画好数据图,到了要写论文插图说明或者画一个漂…...

OpenClaw性能优化:Phi-3-mini-128k-instruct长文本处理的缓存策略

OpenClaw性能优化:Phi-3-mini-128k-instruct长文本处理的缓存策略 1. 问题背景:长文本处理的性能瓶颈 最近在尝试用OpenClawPhi-3-mini处理公司100多页的技术文档时,遇到了严重的性能问题。每当需要对文档进行多轮分析或批量处理时&#xf…...