问一个AddDevice和设备符号链的问题??

UNICODE_STRING ntDeviceName;
     UNICODE_STRING win32DeviceName;
     RtlInitUnicodeString(&ntDeviceName, L"Twdm1");
     RtlInitUnicodeString(&win32DeviceName, L"Twdm1");  
 
  DbgPrint("Starting AddDevice()/n");

//创建我们的功能设备对象,并储存到fdo中:
  status = IoCreateDevice(
    DriverObject,           //驱动程序对象
    sizeof(DEVICE_EXTENSION),   //要求的设备扩展的大小
    &ntDeviceName,                 //设备名称,这里为NULL
    FILE_DEVICE_UNKNOWN,     //设备的类型,在标准头文件WDM.H或NTDDK.H中列出的FILE_DEVICE_xxx值之一
    0,                   //各种常量用OR组合在一起,指示可删除介质、只读等。
    FALSE,                 //如果一次只有一个线程可以访问该设备,为TRUE,否则为FALSE
    &fdo);                 //返回的设备对象

//NT_SUCCESS宏用于测试IoCreateDevice内核是否成功完成。不要忘记检查对内核的所有调用是否成功。
  //NT_ERROR宏不等同于!NT_SUCCESS,最好使用!NT_SUCCESS,因为除了错误外,它还截获警告信息。
  if( !NT_SUCCESS(status))
  {
       DbgPrint("AddDevice(): IoCreateDevice failed!");
    return status;
  }
  else
  {
       DbgPrint("AddDevice(): IoCreateDevice OK!");
  }

status = IoCreateSymbolicLink( &win32DeviceName, &ntDeviceName );
     if (!NT_SUCCESS(status))
     {
           DbgPrint("TWDM: IoCreateSymbolicLink() faild ! /n");
     }
     else
     {
           DbgPrint("TWDM: IoCreateSymbolicLink() ok ! /n");
     }

为什么驱动程序加载的时候显示“AddDevice(): IoCreateDevice failed!”呢?

好像是设备名字不对

改成这两句试试

RtlInitUnicodeString(&ntDeviceName, L"//Device//Twdm1");
RtlInitUnicodeString(&win32DeviceName, L"//DosDevices//Twdm1");

问一个AddDevice和设备符号链的问题??相关推荐

  1. 一个温州山村的区块链“突围”

    来源:深链 作者:门人 在中国广阔的土地上有60多万个村子,不同的年代,有不同的典型村落出现. 集体经济创造了华西村的神话,电子商务的发展带动了"淘宝村"出现,电子竞技的火热催生了 ...

  2. 一个故事看懂“区块链”

    区块链是比特币的底层技术和基础架构,本质上是一个去中心化的数据库.区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)并生成下一个 ...

  3. 分享一个针对触摸设备优化的图片幻灯jQuery插件 - touchtouch

    为什么80%的码农都做不了架构师?>>>    日期:2012-5-6  来源:GBin1.com 在线演示  本地下载 触摸设备越来越流行了,很多互联网用户都使用ipad等平板电脑 ...

  4. 给定一个32位有符号整数,将整数中的数字进行翻转

    给定一个32位有符号整数,将整数中的数字进行翻转 解题思路就是不断的求模,然后取余,然后注意溢出问题: 代码: #include<stdlib.h> #include<stdio.h ...

  5. 问一个网络工程师是怎么崩溃之一的?

    问一个网络工程师是怎么崩溃之一的 他喵的我真的快炸了 CCIE-EI-LAB 我做了很久,包括详细命令,这段时间在背答案,就是不看题目只看拓扑图把所有需求背下来做,因为我也要去考IE 电脑都快给我干虚 ...

  6. python免费网络采集_python网络数据采集7 采集一个网站所有的外链

    [python]代码库from urllib.request import urlopen from bs4 import BeautifulSoup from urllib.parse import ...

  7. “抗疫”新战术:世卫组织联合IBM、甲骨文、微软构建了一个开放数据的区块链项目!...

    作者 | Rohit Chatter jee 译者 | 天道酬勤 责编 | 徐威龙 出品 | 区块链大本营(blockchain_camp) 如今,新冠肺炎是每个人心中最重要的话题.浏览我们的社交媒体 ...

  8. 智能PID软件-AVEVA Diagrams设备符号导入

    智能P&ID软件-AVEVA Diagrams设备符号导入 AVEVA Diagrams是一款使用范围较广的智能系统图绘制软件,可以用来绘制智能P&ID图.智能HVAC 系统图以及智能 ...

  9. 下一个十年,区块链将如何厚“基”薄发?

    PART ONE 引 言 自第一个创世区块的诞生起,至今,区块链技术已经走过其第一个十年的历程,从区块链1.0到区块链2.0,从争相进入的火热到一度成为灰色地带的沉寂,根据Gartner技术成熟曲线, ...

最新文章

  1. 关于Cloud各种组件的停更/升级/替换
  2. 20应用统计考研复试要点(part17)--概率论与数理统计
  3. 北京林业大学计算机技术复试,北京林业大学计算机应用技术04年考研复试办法...
  4. 协议:Modbus通讯协议详细
  5. 搞副业,你离不开这个工具!
  6. 韩国专家深度剖析DT时代的精髓
  7. UGUI直接修改Image的Color和用unity自带的UI Shadr修改_Color属性的区别
  8. 广东省计算机一级常考选择题,广东省计算机一级选择题
  9. Wiki系列(一):Wiki系统选择
  10. 利用华为ENSP模拟器分析和配置中小型企业网络的综合实验(上)
  11. 计算机视觉文献综述选题,综述论文2021-计算机视觉十大领域最新综述文章分类大盘点...
  12. WIN7 WIN10 资源管理器不能自动刷新的解决方法
  13. 微信二维码 活码转跳
  14. 微信小程序WebView嵌入别人网页的解决办法
  15. JavaScript 的DOM对象
  16. Java应用/JDBC/Squirrel在Kerberos认证时报Unable to obtain Principal Name for authentication的解决方法
  17. 大数据好学么?具体学什么?
  18. MAC修改本地域名与 ip 的绑定
  19. 硬件定义软件?还是,软件定义硬件?
  20. 0基础想要快速的学好3D建模,理清思路,对症下药!

热门文章

  1. 2021移动游戏生命周期研究玩家洞察报告
  2. 2021年95后“他经济”研究报告
  3. 中国在线度假旅游市场专题分析2020
  4. 证券期货行业监管大数据治理方案研究
  5. 【2016年第6期】21世纪天文学面临的大数据和研究范式转型
  6. 作者:曾嘉(1980-),男,博士,华为诺亚方舟实验室高级研究员和项目经理。...
  7. 【软件测试】系统测试
  8. 【操作系统】进程与线程
  9. 【操作系统】Semaphore处理读者-写者问题
  10. 使用VSCode+PlantUML+C4-Model快速画架构图