最近我制作了一个从notepad.exe挂钩函数“WriteFile”的程序。
我想获取被我的应用程序挂钩的文档的完整路径,所以我使用了
获取模块文件名/获取模块文件名Ex。但是,我只能找到的字符串是
'记事本.exe'
关于这种情况,我想问你一个问题。
有什么方法可以获取文档的文件名吗?像 C:\Desktop\test.txt
首先,我什至无法想象你的程序的意义。在我看来,很有可能会有更好的方法来实现你的实际目标。
但是,从表面上看这个问题,如果你已经上钩了,WriteFile
那么大概你也可以上钩CreateFile
。如果这不是一个选项,无论出于何种原因,您都可以轻松地从挂钩的 WriteFile 中找到文件名。呼叫GetFileInformationByHandleEx
传递FileNameInfo
。
如果记事本从命令行接收到文档的文件名,请使用GetCommandLine函数。