我正在尝试运行Microsoft提供的一个minifilter示例:https://github.com/Microsoft/Windows-driver-samples/tree/master/filesys/miniFilter/passThrough
我不知道这个minifilter应该做什么(文档不是很好),但对于初学者来说,如果我能看到 val recyclerView = findViewById<RecyclerView>(R.id.RecyclerView)
recyclerView.layoutManager = GridLayoutManager(this, 3)
val workouts = ArrayList<workout>()
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
workouts.add(workout("12.09.2018", "Kniebeugen und Bizeps + Rücken"))
val adapter = CustomAdapter(workouts)
recyclerView.adapter = adapter
语句的输出,我会很高兴。以管理员身份运行 Sysinternals DebugView 时,我执行了DbgPrint()
和fltmc load passthrough
,但未看到过滤器的任何输出。我知道至少代码中与卸载功能相对应的功能有fltmc unload passthrough
消息:
DbgPrint()
我应该看到这些消息吗?如果是这样,怎么样?如果没有,我该如何调试minifilter开发?
PS:我确实在此处定义了建议的注册表项:https://www.danclarke.com/debugview
答案 0 :(得分:2)
答案 1 :(得分:1)
确保您已启用“捕获核心”&#39;在Capture下拉菜单下,而不是“Capture Global Win32&#39;这就是你把我们联系起来的文章。
至于您链接我们的文件系统迷你过滤器设备驱动程序示例,有大量关于MSDN上可用的过滤器管理器驱动程序开发的文档。
如果你盲目地使用微软样本进入驱动程序开发,你真的不希望通过点击手指来理解它是如何工作的......这与用户模式开发非常不同,你&# 39;再次从底部开始。
答案 2 :(得分:1)
查看源代码中的PT_DBG_PRINT宏:
#define PT_DBG_PRINT( _dbgLevel, _string ) \
(FlagOn(gTraceFlags,(_dbgLevel)) ? \
DbgPrint _string : \
((int)0))
有一个条件会检查gTraceFlags变量。默认情况下,gTraceFlags为0。因此,只需设置该变量以启用DbgPrint,例如:
ULONG gTraceFlags = PTDBG_TRACE_ROUTINES;