为什么 GetCurrentDirectory 会分手
Why does GetCurrentDirectory break up?
我试图使用 GetCurrentDirectory()
获取当前目录,但它返回目录,直到目录上有一个空格 ' ',就像当前目录是
C:UsersMix Progprog1Debug
然后它只返回直到
C:UsersMix
有人可以指出为什么会这样吗?这是我的代码:
TCHAR priv[BUFSIZE];
DWORD dwRet;
dwRet = GetCurrentDirectory(BUFSIZE, priv);
TCHAR command[BUFSIZE] = L"cmd.exe /C ";
wcscat_s(command, priv);
我建议(而不是使用wscat_s(将代码更改为如下所示的内容:
wsprintf (command, "cmd.exe /C "%s"", priv);
正如其他人指出的那样,我怀疑 priv 在您的代码中是正确的(即,如果您使用调试器查看内容是正确的(,但由于空间的原因,cmd 没有正确解释它。
在Windows API中,我们可以从下面的代码中获取目录
// Get Current Dir
#define BUFSIZE MAX_PATH
TCHAR myDir[BUFSIZE];
DWORD dwRet;
dwRet = GetCurrentDirectory(BUFSIZE, myDir);