如何取得文件路径
取得其他应用程序正打开着的文件的路径。
比如,现在运行着Word和notepad,分别打开着a.doc和b.txt,那么得到a.doc和b.txt。
我已经试过下面2种方法,可以办到一部分,但都有缺陷。
第一是读取目标进程PEB中的命令行字符串以获取1.txt这个文件名,第二是通过枚举目标进程中的内核对象(句柄)来找到此进程打开的文件。
第一个方法,通过打开1.txt而启动记事本,继而在这个记事本中重新打开2.txt,这时候记事本打开的文件是2.txt,但是PEB中的命令行仍是1.txt。
第二个方法,很多种情况下,比如notepad打开一个文件之后,将数据读到内存,然后就关闭文件,释放句柄。这样我就无法通过句柄得到现在打开的文件了。
请高手指教,分无所谓。