我在Windows中使用vs 2010 在我的程序中,我想在当前目录下创建一个新目录 我用
TCHAR szPath[MAX_PATH];
GetModuleFileName( NULL, szPath, MAX_PATH );
szPath的字符串是“E:\ A20J \ Bin \ ***。exe” 但是当我使用:
BOOL bol = CreateDirectory("Path", NULL);
bol变为1
,这意味着成功
但是在“E:\ A20J \ Bin \”下,我发现即使刷新后也没有“Path”这样的目录,为什么?
答案 0 :(得分:0)
可执行文件的路径并不表示当前进程正在执行的目录。使用GetCurrentDirectory()
来确定正在执行进程的目录,并在那里创建目录"Path"
。如果您希望在与二进制文件相同的目录中创建目录,则需要一些字符串操作来构造路径。
请注意,CreateDirectory()
如果创建目录,则仅返回非零 。该目录可能已经存在,您可能希望不将其视为失败(请参阅我的Create a directory if it doesn't exist的旧答案)。