现在大部分win10都是64位的,所以和xp系统运行驱动程序有较大的区别,我们知道64位系统运行32位应用程序是可行的,这是windows系统向下兼容的体现,但是内核态的驱动程序必须区分32位和64位驱动,。32位Windows安装32位驱动,64位Windows安装64位驱动,无法交叉安装。

所以现在面临的问题是
1.如何安装x64位驱动
2.如何配置VS
3.如何禁止微软数字签名认证(继vista系统之后的所有64系统都需要微软数字签名认证)
4.如何解决DbgPrint 无法在 DebugView 中输出(xp系统不存在此问题)

第一个问题很好解决,将X86选项更改为X64选项,如下图所示

vm显卡驱动去虚拟化 win10虚拟机显卡驱动_重启


然后右键项目文件,点击属性,点击右上角的配置管理器,将win32更改为x64,如下图所示

vm显卡驱动去虚拟化 win10虚拟机显卡驱动_重启_02

然后重新生成项目文件,系统会增加一个X64文件夹,该文件夹下就有生成的64位驱动,(所以64位程序和以前32位程序存放的位置不一样)

第二个问题,进行如下配置即可

vm显卡驱动去虚拟化 win10虚拟机显卡驱动_驱动程序_03


vm显卡驱动去虚拟化 win10虚拟机显卡驱动_重启_04


vm显卡驱动去虚拟化 win10虚拟机显卡驱动_驱动程序_05


第三个问题,如果这个问题不解决,在KMD Manager工具进行启动服务,会出现Error Number not found的错误,查找了网上的众多资料,有两个解决方案

第一种方案

  1. 确保bios里的security boot选项为disable状态
  2. 执行如下命令,禁用驱动签名检测,在管理员权限下打开CMD,执行如下命令:
    bcdedit -set loadoptions DDISABLE_INTEGRITY_CHECKS
    bcdedit -set TESTSIGNING ON
  3. 如果需要恢复驱动签名检测,在管理员权限下打开CMD,执行如下命令:
    bcdedit -setloadoptions ENABLE_INTEGRITY_CHECKS
    bcdedit -set TESTSIGNING OFF
    然后在bios里面启用security boot

但是这个方案我没有测试成功,原因是第一个步骤中需要设置security boot,但是我的虚拟机的BIOS中没有security boot让我设置,经测试,跳过第一步骤直接输入第二个步骤中的命令是不可行的

第二种方案

1、按下win+i 组合键打开windows 设置,点击“更新和安全”;

2、找到恢复,点击“高级启动”下的“立即重启”,重启电脑;通过点击 开始菜单 ,按下shift 点击 电源 – 重启可达到同样效果;

3、重启win10后在高级界面选择“疑难解答”;

4、选择“高级选项”;

5、接着点击“启动设置”;

6、点击重启,会进入到启动设置界面;

出现如下这个界面,再按F7键则禁用签名成功,不过以上的步骤只能临时的禁用驱动数字签名,重启后失效,需要永久禁止的话各位还是需要研究一下第一种方案

vm显卡驱动去虚拟化 win10虚拟机显卡驱动_重启_06


第四个问题

1,按下快捷键【win+r】键,在弹出的运行窗口中,输入regedit,再按下回车键,打开注册表

2.在HKLM\SYSTEM\CuurentControlSet\Control\Session Manager找到Debug Print Filter文件夹,如果没有的话,新建这个文件夹,取名为Debug Print Filter

3.在Debug Print Filter下新建一个DWORD(32位)类型的项:取名为Default,值为0xF.

如下图所示

vm显卡驱动去虚拟化 win10虚拟机显卡驱动_驱动程序_07

至此所有步骤就做好了,以管理员权限打开 KmdManager,然后再以管理员权限打开DbgView(注意,xp系统中这两个软件都不需要管理员权限,但是win10环境下,以上软件都必须用管理员权限打开)

以下是成功运行的证明截图

vm显卡驱动去虚拟化 win10虚拟机显卡驱动_vm显卡驱动去虚拟化_08