我正在尝试编写MiniFilter驱动程序。我已经在Windows 8.1上启动并运行了Visual Studio 2013 Update 3和WDK,并安装了来自MS的名为“过滤器驱动程序:文件系统微型过滤器”的模板。我已经使用此模板创建了一个新项目,可以使用小的批处理文件部署到远程(在我的LAN上)8.1 VM中,以安装驱动程序来代替内置驱动程序安装程序(我认为尚不支持该驱动程序)用于微型过滤器)。
在此模板中,有许多调试语句被类型定义为对DbgPrint的调用。我真的很希望能够从SysInternals套件的DebugView中查看这些内容。显然,我要做的就是在注册表中创建一个的DWORD,根据http://msdn.microsoft.com/en-us/library/windows/hardware/ff551519(v=vs.85).aspx在DEFAULT
下将其设置为0xF。但是,仍然没有任何内容显示在DebugView中。我在VM上以管理员身份启动了它,并禁用了Win32捕获。
我认为WDK的部署工具可以正确设置内核调试(它在我的VM上创建了另一个用户WDKRemoteUser并为我运行HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter
),但这似乎还不够。有任何想法吗?
最佳答案
我认为问题在于必须在调试器等待连接的情况下启动测试机。当我这样做时,内核消息就会显示在Visual Studio调试器中,并且我也会假设它出现在DebugView中。