VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 1517|回复: 12

[分享] 今日一贴!驱动环境下的字符串拼接!(1)

[复制链接]
75_avatar_middle
最佳答案
23 
online_supermod 发表于 2020-2-12 22:50:03 | 显示全部楼层 |阅读模式
本帖最后由 wl1383838438 于 2020-2-12 22:55 编辑


这只是hello world的驱动笔记,
NTSTATUS  是32位无符号长整型型,在驱动开发中常用该类型来返回一个状态--STATUS_SUCCESS用来确定返回的状态是否成功
DriverEntry驱动例程的入口函数,类似于(C++的MAIN),在进入该函数钱IO管理器会调用
IOPInvalid_device_object地址填满整个MajoFuntion数组,该数组的函数指针,对应着相应的IRP(IRP是一个结构)
NTSTATUS DriverEntry(IN PDRIVER_OBJECT pdriver_object,IN PUNICODE_STRING punicode_string)
{
        UNICODE_STRING uScr,uDes;
//  UNICODE_STRING  结构是通过使用各种本地安全认证(LSA)的功能来指定一个 Unicode 字符串。
//该结构的三个成员lenght,buffer MaxinmumLenght,
        RtlInitUnicodeString(&uScr,L"hello");

        uDes.Buffer=(PWSTR)ExAllocatePool(PagedPool,BUFF_SIZE);
        //枚举POOL_TYPE&;指定要分配的系统内存类型。
        //PagedPool-分页池;,这是可分页的系统内存。分页池只能在 IRQL < DISPATCH_LEVEL进行分配和访问。;
        //;BUFF_SIZE-指定要分配的字节数。
        uDes.MaximumLength=BUFF_SIZE;
        //;RtlCopyUnicodeString;例程将源字符串复制到目标字符串。;
        //;uDes指向目标字符串缓冲区的指针。此参数指向;UNICODE_STRING&#8206;&#8206;结构。
        //uScr   指向源字符串缓冲区的指针。此参数指向;UNICODE_STRING;结构。
        RtlCopyUnicodeString(&uDes,&uScr);
        KdPrint(("拼接前%wZ",&uDes));
        //RtlAppendUnicodeToString;例程将提供的 Unicode 字符串连接到缓冲的 Unicode 字符串。
        if (STATUS_SUCCESS==RtlAppendUnicodeToString(&uDes,L"world"))
        {
                KdPrint(("STATUS_SUCCESS"));
        }

        KdPrint(("拼接后%wZ",&uDes));
        RtlFreeUnicodeString(&uDes);

        pdriver_object->DriverUnload=Unload;//     指向驱动的卸载回调函数,每一个驱动框架都有一个该函数 可以为空  但是一定要写否则驱动无法下载

        return STATUS_SUCCESS;//返回执行状态
}




上一篇:今日一贴,HOOK你的Alt+F4,让你无法关闭!
下一篇:来个驱动大佬帮忙看看,(已解决)

本帖被以下淘专辑推荐:

04_avatar_middle
最佳答案
0 
在线会员 发表于 2022-6-23 06:48:25 | 显示全部楼层
也来学习学习
07_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-8 02:48:03 | 显示全部楼层
也来学习学习
07_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-9 11:44:45 | 显示全部楼层
谢谢分享 谢谢分享
07_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-9 13:06:08 | 显示全部楼层
支持老铁。 支持老铁。
07_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-10 00:03:35 | 显示全部楼层
每天进步一点!
07_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-12 02:27:00 | 显示全部楼层
来学习下.......
07_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-13 05:00:33 | 显示全部楼层
  谢谢分享 谢谢分享
07_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-17 10:10:59 | 显示全部楼层
也来学习学习
07_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-20 05:32:38 | 显示全部楼层
祝VC驿站越办越好!...
07_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-20 07:13:17 | 显示全部楼层
  谢谢分享 谢谢分享
07_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-21 06:10:14 | 显示全部楼层
谢谢分享 谢谢分享
17_avatar_middle
最佳答案
0 
在线会员 发表于 2022-7-21 08:41:20 | 显示全部楼层
也来学习学习
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

×【发帖 友情提示】
1、请回复有意义的内容,请勿恶意灌水;
2、纯数字、字母、表情等无意义的内容系统将自动删除;
3、若正常回复后帖子被自动删除,为系统误删的情况,请重新回复其他正常内容或等待管理员审核通过后会自动发布;
4、感谢您对VC驿站一如既往的支持,谢谢合作!

关闭

站长提醒上一条 /2 下一条

QQ|小黑屋|手机版|VC驿站 ( 辽ICP备09019393号-4 )|网站地图wx_jqr

GMT+8, 2023-9-29 19:09

Powered by CcTry.CoM

© 2009-2021 cctry.com

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