1

我刚刚注意到在 Windows system32 下是当前工作目录(而不是执行文件所在的目录)。为什么呢?总是这样吗?这是故意的吗?

4

1 回答 1

4

当前目录设置为进程启动的一部分。一旦进程开始,它可以随意更改其当前目录。

当前目录被指定为 的参数CreateProcess,实际上是用于创建进程的任何其他类似 API 函数。NULL传递新进程的当前目录是很常见的。在这种情况下,使用父进程的当前目录。

所以,看看你的具体问题:

为什么呢?

如果您的进程的当前目录是system32,那是因为无论启动该进程都选择使其如此,或者您的进程选择使其如此。

总是这样吗?

不,进程创建者和进程本身都可以自由设置当前目录。

这是故意的吗?

我不知道,因为我不知道您的流程是如何创建的。

于 2013-02-08T12:46:32.663 回答