首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在windows上记录程序的DeviceIoControl调用

如何在windows上记录程序的DeviceIoControl调用
EN

Stack Overflow用户
提问于 2012-03-31 01:45:52
回答 4查看 5.3K关注 0票数 5

我需要捕获应用程序的DeviceIoControl()系统调用。在linux上,strace可用于分析所有ioctl调用。windows上有没有类似的功能?

MSDN网站推荐了一个名为“进程监视器”的程序来分析可执行文件的实时活动。但是,“进程监视器”不会显示任何有关DeviceIoControl调用的信息。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2012-03-31 02:02:04

你有没有试过OSR的IRPTracker

IrpTracker允许您监控系统上的所有I/O请求数据包(I/O request packets,I),而无需使用任何筛选器驱动程序,也无需引用任何设备对象,从而使PnP系统完全不受干扰。除了能够看到IRP关闭驱动程序堆栈的路径及其最终完成状态之外,还提供了一个详细的视图,允许您查看IRP的静态部分的全部内容,以及当前和以前堆栈位置的解释视图。

票数 3
EN

Stack Overflow用户

发布于 2012-06-08 02:56:08

要捕获DeviceIoControl()函数,可以使用API钩子。我的公司提供了Deviare,一个具有高级接口的钩子引擎。你不需要知道很多关于钩子的知识,它可以自由地使用(只需要显示一个对话框,上面写着未注册的版本)。它包括一个带有源代码的钩子控制台。

票数 2
EN

Stack Overflow用户

发布于 2014-04-08 00:46:34

Dr.Memory (http://drmemory.org)工具附带一个名为drstrace的系统调用跟踪工具,它列出了目标应用程序进行的所有系统调用,包括NtDeviceIoControlFile,以及它们的参数:drstrace

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9947933

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档