我尝试使用GetCurrentDirectory()
获取当前目录,但它返回目录,直到dir上有一个空格',就像当前目录是
C:\Users\Mix Prog\prog1\Debug
然后只返回
C:\Users\Mix
有人能指出为什么会这样吗? 这是我的代码:
TCHAR priv[BUFSIZE];
DWORD dwRet;
dwRet = GetCurrentDirectory(BUFSIZE, priv);
TCHAR command[BUFSIZE] = L"cmd.exe /C ";
wcscat_s(command, priv);
答案 0 :(得分:1)
我建议(而不是使用wscat_s)将代码改为:
wsprintf (command, "cmd.exe /C \"%s\"", priv);
正如其他人所指出的那样,我怀疑你的代码中的priv是正确的(例如,如果你看一下调试器的内容是正确的),但由于空间的原因,cmd没有正确解释它。
答案 1 :(得分:-1)
在Windows API中,我们可以从代码
下面获取目录 // Get Current Dir
#define BUFSIZE MAX_PATH
TCHAR myDir[BUFSIZE];
DWORD dwRet;
dwRet = GetCurrentDirectory(BUFSIZE, myDir);