VC驿站

 找回密码
 加入驿站

QQ登录

只需一步,快速开始

搜索
查看: 151|回复: 1

[分享] 今日一贴!驱动环境下的字符串输出笔记

[复制链接]
75_avatar_middle
最佳答案
18 
online_supermod 发表于 2020-2-10 11:03:50 | 显示全部楼层 |阅读模式
#include<ntddk.h>   //ddk为 Devrice Development Kit  设备驱动开发包    NT的意义个人理解为(New    Technology)新技术,至于为啥是NT建议看看Winodws历史 这里不再挖坟!
//头文件主要是为了导入驱动程序开发所必需的 NTDDK.h 头文件,此头
文件里包含了对 DDK 的所有导出函数的声明。NT 式的驱动程序要导入的头文件是
NTDDK.h,而 WDM 式的驱动程序要导入的头文件为 WDM.h。
void Unload(PDRIVER_OBJECT drivdr_object)
{
        KdPrint(("卸载成功2"));
}


/*
在进入DriverEntry函数之前会调用iopinvalid_deruver_object地址填满真个majorfuntion数组,该数组是在AEriver_object的函数指针数组它里面的每一个地址对应着相应的irp我们可以通过简单的设置这个数组,
将IRP与相应的派遣函数关联起来

*/


/*NT STATUS为一个32位的无符号长整型,驱动开发中我们一般用它来检测返回的状态,ntstatus是一个非常有用的宏定义,通常我们用NT_SUCCESS
来检测返回的状态是否正确
*/





//DeriverEntry驱动程序的入口函数   参数1位驱动对象,参数2位包含注册标的路径指向
NTSTATUS DriverEntry(PDRIVER_OBJECT pdriver_object,PUNICODE_STRING punicode_string)
{
        CHAR*cstr="hello CHAR2";//定义一个ANS的字符集,该字符集的成员变量是指针
        KdPrint(("%s",cstr));//初始化ANS字符集,输出并不需要取地址但是假如初始化UNICODE_STRING 字符串是需要取地址ANS的字符集是%s小写的s
        WCHAR*wstr=L"hello WCAHR2";//定义一个宽字符集并且将其初始化初始化宽字符集需要加上一个L以表示该字符串是宽字符集
        KdPrint(("%S",wstr));//输出该字符集的时候需要注意输出的方法。 是大写的S并不是和ANS一样 ANS是小写的  同样不用取地址符,
        UNICODE_STRING ustr;//初始化驱动版的字符集,并且该字符串的初始化和ANS以及 宽字符集不一样的是 该UNICODE_STRING并不是指针而是一个成员变量,但是在后面的初始化时需要取出该成员变量的地址
        RtlInitUnicodeString(&ustr,L"hello Ini Unicode2");//取出该成员变量的地址 并且将后面的字符串传递进去 并且加上L表示是宽字符集
        KdPrint(("%wZ",&ustr));//输出的注意事项  该驱动版的字符串输出的写法是%wZ这样并不是和ANS的小写s以及宽字节的S,  是%加上w和大写的Z才能输出,编译器中不会报错但是在调试时会蓝屏
        //rtinitunicodestring 函数是初始化驱动版的字符串,该函数需要2个参数  参数1是被初始化的字符串地址,参数而是初始化的字符串,你将那个东西初始化进参数一
        pdriver_object->DriverUnload=Unload;//     指向驱动的卸载回调函数,每一个驱动框架都有一个该函数 可以为空  但是一定要写否则驱动无法下载

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




上一篇:类的问题,求助
下一篇:今日一贴,HOOK你的Alt+F4,让你无法关闭!
58_avatar_middle
最佳答案
31 
online_vip 发表于 2020-2-10 17:13:54 | 显示全部楼层
写的很好,顶顶。
您需要登录后才可以回帖 登录 | 加入驿站 qq_login

本版积分规则

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

关闭

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

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

GMT+8, 2020-5-28 09:08

Powered by CcTry.CoM

© 2009-2020 cctry.com

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