CreateProcess的当前进程的当前目录是什么?
CreateProcess函数用于创建进程:
BOOL CreateProcess
(
PCTSTR pszApplicationName,
PTSTR pszCommandLine,
PSECURITY_ATTRIBUTES psaProcess,
PSECURITY_ATTRIBUTES psaThread,
BOOL bInheritHandles,
DWORD fdwCreate,
PVOID pvEnvironment,
PCTSTR pszCurDir,
PSTARTUPINFO psiStartInfo,
PPROCESS_INFORMATION ppiProcInfo
);
pszCommandLine参数指定了 CreateProcess创建新进程所需的完整命令行。当
CreateProcess解析该参数时,它会检查命令行参数中的第一个标记,并将其作为
进程要执行的可执行文件名,如果该文件名没有指定后缀,函数将把它当作exe文
件。CreateProcess会按下面的顺序查找该文件:
1. 包含当前进程可执行文件的目录
3. Windows系统目录,既GetSystemDirectory返回的目录
4. Windows目录
5. PATH环境变量列出的目录
请问:
1. 包含当前进程可执行文件的目录和2. 当前进程的当前目录有什么区别?
比如:我的程序是E:\main.exe,在此程序中利用createprocesss打开了D:
\test\sub.exe这个程序。