OpenProcess是否始终写入锁定文件?

时间:2010-04-06 20:14:44

标签: windows winapi

我想在计算机上运行的另一个进程上调用Windows API OpenProcess函数。这会不会导致我打开的进程被写入锁定的文件?或者它取决于我要求的access rights

2 个答案:

答案 0 :(得分:2)

是的,它是Windows的基本属性。加载可执行文件(EXE或DLL)时,Windows会创建该文件的内存映射视图。来自可执行文件的代码或数据块会根据需要进行页面错误以保持程序运行。它的工作方式也是相反的,当Windows需要为另一个程序提供RAM时,它会抛出大量的映射页面,这些页面暂时没有使用。如果它们是代码,那些页面不占用页面文件中的空间,它们可以从可执行文件重新加载。

非常高效,代码是在16兆字节的RAM是奢侈品时编写的。内存映射部分对文件保持写锁定。在这个时代仍然有用,它可以防止某些恶意软件对运行过程的代码感到厌烦。

答案 1 :(得分:0)

进程运行时锁定进程文件;它与OpenProcess没有任何关系。当进程终止时,文件将被解锁。